安装pyspider出现的坑

本文来自微信公众号:coder_xiaobu,欢迎关注

一.安装pyspider

pip install pyspider

二.启动

pyspider all

三.安装中出现的问题处理

  1. 安装的时候出现如下的错误
"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
  1. 启动的时候出现如下错误
async=True, get_object=False, no_input=False):

解决方法:打开python安装目录下面的\Lib\site-packages\pyspider\run.py文件,查找所有的async将其替换为async1。

  1. 启动出现如下错误
 def __init__(self, inqueue, outqueue, poolsize=100, proxy=None, async=True):

解决方法:打开python安装目录下面的\Lib\site-packages\pyspider\fetcher\tornado_fetcher.py文件,查找所有的async将其替换为async1。

4.** webUI打不开**

解决方法:打开python安装目录下面的\Lib\site-packages\pyspider\webui\app.py文件,查找所有的async将其替换为async1。

  1. 启动出现如下错误:
 - Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead

解决方法:打开python安装目录下面的\Lib\site-packages\pyspider\webui\webdav.py文件,查找 'domaincontroller': NeedAuthController(app),将其修改为

'http_authenticator':{
        'HTTPAuthenticator':NeedAuthController(app),
    },
  1. 启动出现如下错误:
ImportError: cannot import name 'DispatcherMiddleware' from 'werkzeug.wsgi' (D:\soft\python3.8\Lib\site-packages\werkzeug\wsgi.py)

解决方法:降低wsgidav的版本

# 卸载原版本
pip uninstall wsgidav
# 安装低版本的
pip install werkzeug==0.16.1
  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环境变量里面。

推荐阅读更多精彩内容