win10下安裝pyspider總結

win10下安裝pyspider有很多坑,爲了記錄下來,專門新建了虛擬環境從頭安裝加以記錄,所有出錯信息和截圖均來自安裝過程,不對你的症請找其他大夫,不喜勿噴。

安裝:
pip install pyspider

啓動:
pyspider

報錯:

  File "d:\Python\virtualEnv\env10\lib\site-packages\pyspider\webui\app.py", line 59, in run
    from .webdav import dav_app
  File "d:\Python\virtualEnv\env10\lib\site-packages\pyspider\webui\webdav.py", line 216, in <module>
    dav_app = WsgiDAVApp(config)
  File "d:\Python\virtualEnv\env10\lib\site-packages\wsgidav\wsgidav_app.py", line 134, in __init__
    _check_config(config)
  File "d:\Python\virtualEnv\env10\lib\site-packages\wsgidav\wsgidav_app.py", line 118, in _check_config
    raise ValueError("Invalid configuration:\n  - " + "\n  - ".join(errors))
ValueError: Invalid configuration:
  - Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead.

原因:wsgidav版本太高了,默認安裝3.X版本,重新安裝2.X:
python -m pip uninstall wsgidav
python -m pip install wsgidav==2.4.1

啓動,掛起,執行不下去,重啓電腦,在啓動pyspider,再報新錯:

 File "d:\Python\virtualEnv\env10\lib\site-packages\pyspider\run.py", line 497, in all
    ctx.invoke(webui, **webui_config)
  File "d:\Python\virtualEnv\env10\lib\site-packages\click\core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "d:\Python\virtualEnv\env10\lib\site-packages\click\decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "d:\Python\virtualEnv\env10\lib\site-packages\pyspider\run.py", line 384, in webui
    app.run(host=host, port=port)
  File "d:\Python\virtualEnv\env10\lib\site-packages\pyspider\webui\app.py", line 64, in run
    from werkzeug.wsgi import DispatcherMiddleware
ImportError: cannot import name 'DispatcherMiddleware' from 'werkzeug.wsgi' (d:\program files\python37\lib\site-packages\werkzeug\wsgi.py)

原因:werkzeug版本高了,DispatcherMiddleware這個類已經不存在了,因此重新安裝小版本:
python -m pip uninstall werkzeug
python -m pip install werkzeug=0.15

啓動,掛起,執行不下去,重啓電腦,啓動pyspider,OK了

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章