安装指南¶
支持的 Python 版本¶
AyugeSpiderTools
需要 Python 3.9+
,在 AyugeSpiderTools 3.10.1
之后的版本不再支持 python 3.8
。
安装 AyugeSpiderTools¶
可以使用以下命令安装
ayugespidertools
及其依赖项:
若你的数据库场景只需要
mysql
和mongodb
,且不需要本库extras
中的扩展功能,那么直接简洁安装即可,命令如下:
pip install ayugespidertools
若你需要更多的数据库场景,且同样不需要本库
extras
中的扩展功能,那么安装数据库版本最好,命令如下:
pip install ayugespidertools[database]
安装全部依赖命令如下:
pip install ayugespidertools[all]
注意:若你只需要 scrapy
扩展库的简单功能,那么默认的简洁依赖安装即可;一些可选择的开发功能(都会放在 extras
部分)若要使用,请使用完整安装。
强烈建议您将 ayugespidertools
安装在专用的 virtualenv
中,以避免与您的系统包发生冲突。
安装预发布(开发)版本,通过源码安装:
# 请注意,此源码方式安装的是开发版本,请勿在正式场景中使用!
pip install git+https://github.com/shengchenyang/AyugeSpiderTools.git
可能遇到的问题¶
在安装时可能会遇到以下问题:
zsh: no matches found: ayugespidertools[database]
# zsh 中需要修改对应的命令 pip install 'ayugespidertools[database]' pip install 'ayugespidertools[all]'
无法安装到最新版本
这是国内源对第三方库同步(完整度和速度)的问题。
# 1.首先查看 pypi 上的版本信息 # 如果输出的 latest 版本信息非最新,说明你的 pip 的 pypi 源还未同步,可选择“科学上网”或手动安装。 pip index versions ayugespidertools # 1.1. 若你可以科学访问,安装只需指定 pypi 官方源即可: pip install ayugespidertools -i https://pypi.org/simple # 1.2. 若访问受限,则需要手动安装: # 先到 https://pypi.org/project/AyugeSpiderTools/#files 或 https://github.com/shengchenyang/AyugeSpiderTools/releases 下载 whl 文件 # 然后 pip 安装此 whl 即可 pip install ayugespidertools-x.x.x-py3-none-any.whl[database] -i https://mirrors.aliyun.com/pypi/simple/ # zsh 中的命令同样需要修改 pip install 'ayugespidertools-x.x.x-py3-none-any.whl[database]' -i https://mirrors.aliyun.com/pypi/simple/
无法查找到
ayugespidertools
这也是国内源的完整度问题,推荐优先配置为阿里云源或者清华大学源即可,若还不行请切换到官方源。
报错详情如下:
ERROR: Could not find a version that satisfies the requirement ayugespidertools (from versions: none) ERROR: No matching distribution found for ayugespidertools
解决方法如下:
pip install ayugespidertools -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com # 或者使用官方源: pip install ayugespidertools -i https://pypi.org/simple
可能存在的兼容问题
特别是
Apple Silicon MacOS
的较新系统场景,若遇到安装问题,可先尝试单独安装Scrapy
,若问题依然存在则可排除本库的问题。报错示例如下:
ImportError: dlopen(/Users/runner/work/AyugeSpiderTools/AyugeSpiderTools/.tox/py/lib/python3.8/site-packages/lxml/etree.cpython-38-darwin.so, 0x0002): symbol not found in flat namespace '_exsltDateXpathCtxtRegister' /Users/runner/work/AyugeSpiderTools/AyugeSpiderTools/.tox/py/lib/python3.8/site-packages/coverage/control.py:887: CoverageWarning: No data was collected. (no-data-collected)
解决方法如下:
可能出现兼容问题的库有:
lxml
,urllib3
,twisted
等,可通过手动安装未报错的依赖版本,或升级Python Patch
版本来快速解决。如遇到此类问题,请提
issue
反馈,我会更新依赖库版本。
若遇到其它的各种问题,请提 issues。
值得知道的事情¶
ayugespidertools
是依赖于Scrapy
开发的,对其在爬虫开发中遇到的常用操作进行扩展。可以从最新源码中构建,构建方法请参考本文 How-To-Build-Your-Own-Library 部分。
使用虚拟环境(推荐)¶
建议在所有平台上的虚拟环境中安装此库。
有关如何创建虚拟环境的信息,请参阅虚拟环境和包。