安装pyspider出现的问题
本文来自微信公众号:coder_xiaobu,欢迎关注
一.安装pyspider
pip install pyspider
二.启动
pyspider all
三.安装中出现的问题处理
- 安装的时候出现如下的错误
"Please specify --curl-dir=/path/to/built/libcurl"
解决方法:下载安装pycurl,下载地址https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycurl,下载对应版本的whl文件,比如pycurl‑7.43.0.4‑cp38‑cp38‑win32.whl,然后安装下载文件,然后再安装就可以了。
pip3 install pycurl‑7.43.0.4‑cp38‑cp38‑win32.whl
- 启动的时候出现如下错误
async=True, get_object=False, no_input=False):
解决方法:打开python安装目录下面的Libsite-packagespyspiderun.py文件,查找所有的async将其替换为async1。
- 启动出现如下错误
def __init__(self, inqueue, outqueue, poolsize=100, proxy=None, async=True):
解决方法:打开python安装目录下面的Libsite-packagespyspiderfetcher ornado_fetcher.py文件,查找所有的async将其替换为async1。
- webUI打不开
解决方法:打开python安装目录下面的Libsite-packagespyspiderwebuiapp.py文件,查找所有的async将其替换为async1。
- 启动出现如下错误:
- Deprecated option "domaincontroller": use "http_authenticator.domain_controller" instead
解决方法:打开python安装目录下面的Libsite-packagespyspiderwebuiwebdav.py文件,查找 “domaincontroller”: NeedAuthController(app),将其修改为
"http_authenticator":{
"HTTPAuthenticator":NeedAuthController(app),
},
- 启动出现如下错误:
ImportError: cannot import name "DispatcherMiddleware" from "werkzeug.wsgi" (D:softpython3.8Libsite-packageswerkzeugwsgi.py)
解决方法:降低wsgidav的版本
# 卸载原版本
pip uninstall wsgidav
# 安装低版本的
pip install werkzeug==0.16.1
- 启动出现如下错误:
pkg_resources.DistributionNotFound: The "wsgidav>=2.0.0" distribution was not found and is required by pyspider
解决方法,安装 wsgidav
pip install wsgidav==2.0.0
四、安装Phantomjs
下载地址:http://npm.taobao.org/dist/phantomjs/
下载完成配置环境变量,将其下面的bin目录路径加入PATH环境变量里面。