Win10 + python3.6 安装pyspider

安装phantomjs

下载地址:https://phantomjs.org/download.html
下载的文件解压缩之后,bin文件夹下,找到phantomjs.exe,将其复制到python的scripts文件夹下(或为其配置环境变量路径),即为安装。

安装redis

windows系统中安装redis
下载地址:https://github.com/microsoftarchive/redis/releases
下载版本:3.2.100
自行安装即可。

安装redis-py

python中安装redis库

pip3 install redis

安装pycurl

需手动下载,根据python版本下载对应版本,我的是python3.6的32位。
据说7.44.1版本不稳定,因此遵循前辈们的7.43.0版本
下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycurl
我下载的是:pycurl‑7.43.0.4‑cp36‑cp36m‑win32.whl
随后安装:

pip3 install D:\安装程序\Python\pycurl-7.43.0.4-cp36-cp36m-win32.whl

安装pysider

pip3 install pyspider

相关错误

基本和前辈们遇到的问题一样:

错误1:SyntaxError: invalid syntax

问题:

async=True, get_object=False, no_input=False):
        ^
SyntaxError: invalid syntax

办法:
将pyspider文件夹下的相关代码修改:
我的路径为:
C:\Users\user_name\AppData\Local\Programs\Python\Python36-32\Lib\site-packages/pyspider/run.py
C:\Users\user_name\AppData\Local\Programs\Python\Python36-32\Lib\site-packages/pyspider/fetcher/tornado_fetcher.py
C:\Users\user_name\AppData\Local\Programs\Python\Python36-32\Lib\site-packages/pyspider/webui/app.py
可以用记事本打开该文件,然后ctrl+f查找async,再用flask替换所有的async,不要替换Async,最后保存即可

错误2:werkzeug 版本太高

问题:

.ImportError: cannot import name 'DispatcherMiddleware' from 'werkzeug.wsgi' (/usr/local/lib/python3.8/dist-packages/werkzeug/wsgi.py

办法:
降级werkzeug 版本
先卸载高版本:

pip3 uninstall werkzeug

再安装低版本:

pip3 install werkzeug==0.16.1

错误3:flask版本太高

问题:

ImportError: cannot import name 'ContextVar' from 'werkzeug.local' (/usr/local/lib/python3.8/dist-packages/werkzeug/local.py

办法:
降级flask版本
先卸载高版本:

pip3 uninstall flask

再安装低版本:

pip3 install flask==1.0

错误4:wsgidav 版本太高

问题:

TypeError: Can't instantiate abstract class ScriptProvider with abstract methods get_resource_inst

办法:
降级wsgidav版本
先卸载高版本:

pip3 uninstall wsgidav

再安装低版本:

pip3 install wsgidav==2.4.1

错误5:pyspider all无法全部启动

问题:
pyspider all之后只启动了2行:

phantomjs fecther running on port 25555
[I 180629 07:08:29 result_worker:49] result_worker starting…

办法:
在windows系统服务中重启redis,再执行pyspider all

结束

祝好运!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值