解 - pyspider坑 Deprecated option 'domaincontroller': use 'http_authenticator 然后是 ImportError: cannot import name 'DispatcherMiddleware')

这种情况的出现是我在windows 10 上装 pyspider 才出现, 我的环境是 python 2.7

一开始的问题是 pycurl 无法安装。后来装了一个网盘上的包,安装好就好.

当运行 pyspider all 后,出现以下错误: 

ValueError: Invalid configuration: - Deprecated option 'domaincontroller': use 'http_authenticator

此时, 查了资料,

将wsgidav替换为2.4.1

pip  uninstall wsgidav          # 卸载
pip install werkzeug==2.4.1 #安装2.4.1版本

 安装成功后,重启启动pyspider依旧报错:

run
from werkzeug.wsgi import DispatcherMiddleware
ImportError: cannot import name 'DispatcherMiddleware'

再次寻找, 发现是版本的原因,werkzeug的版本为1.0.0,这个版本中没有DispatcherMiddleware方法。

解决办法: 降版本。

注意降低版本不能低于0.15版本,因为pyspider要求大于0.15版本以上

pip  uninstall werkzeug        # 卸载
pip install werkzeug==0.16.1 #安装0.16.1版本

再次启动,可行了。

----

知识点1,

有问题,找bing ,不要找百度。

知识点2,

踩坑是必然的,努力去找办法总能找到。

猜你喜欢

转载自www.cnblogs.com/iameric/p/12343462.html