安装前的忠告:
python版本不能太高 最好3.6或3.7(在3.10时遇到实在难以解决的错误而弃用)
安装时总有错误不是搜安装pyspider错误就能出来
安装环境
python3.7.9
win64
win11
安装顺序
curl --> pycurl --> pyspider
phantomjs
Download PhantomJS
找对应版本
curl
curl - Download
pycurl
python一些包下载站
找python37 版本
Python Extension Packages for Windows - Christoph Gohlke (uci.edu)
用 pip install <包名> 安装
pyspider
pip install
处理错误
错误1:SyntaxError: invalid syntax
一:
在三个文件(上网搜哪三个)里把关键字async改成非关键字(取变量名)
注意只改参数,变量, 不该函数名中的async(注意别用全局替换)
二:
找到/pyspider/webui/webdav.py文件
将'domaincontroller': NeedAuthController(app),
修改为
'http_authenticator':{
'HTTPAuthenticator':NeedAuthController(app)
},
错误2:werkzeug 版本太高
.ImportError: cannot import name 'DispatcherMiddleware' from 'werkzeug.wsgi' (/usr/local/lib/python3.8/dist-packages/werkzeug/wsgi.py
降版本 werkzeug==0.16.1
错误3:flask版本太高
大概意思 "werkzeug>=2.0" required "flask>=2.0"
自身flask版本高,降flask版本
flask==1.0
但是出错
ImportError: cannot import name ‘json’ from itsdangerous
这个错误是flask版本过低导致
陷入了僵局:werkzeug需要低版本的flask 而 flask版本低了会出错
解决方法:
[Solved] ImportError: cannot import name ‘json’ from itsdangerous - ItsMyCode
解决方案 1 – 将 Flask 升级到最新版本 > 2
解决方案 2 – 将 Flask 升级到 1.1.4 并将标记安全降级到 2.0.1
我选第二种
pip install Flask==1.1.4
pip install markupsafe==2.0.1
解决方案3 - 将其危险降级到2.0.1
错误4:wsgidav 版本太高
TypeError: Can't instantiate abstract class ScriptProvider with abstract methods get_resource_inst
wsgidav==2.4.1
pyspider dashboard
http://localhost:5000/
好文阅读
发表评论