安装pyspider的艰辛历程

安装前的忠告:

python版本不能太高 最好3.6或3.7(在3.10时遇到实在难以解决的错误而弃用)

安装时总有错误不是搜安装pyspider错误就能出来

安装环境

python3.7.9

win64

win11

安装顺序

curl --> pycurl --> pyspider

phantomjs

Download PhantomJS

找对应版本

curl

curl - Download

安装pyspider的艰辛历程_第1张图片

pycurl

python一些包下载站

找python37 版本

Python Extension Packages for Windows - Christoph Gohlke (uci.edu)

安装pyspider的艰辛历程_第2张图片

用 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/

你可能感兴趣的:(python,网络爬虫)