pip install pyspider失敗的解決辦法

報錯




下載pycurl庫

地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pycurl

選擇對應的python版本




安裝pycurl庫

pip install 文件名




安裝pyspider庫

換源安裝pyspiderpip install pyspider -i https://pypi.doubanio.com/simple

安裝成功




此時運行pyspider還會報錯

  • 由於 pyspider 的做者在參數中用了async關鍵字
  • Python 3.5中引入了async和await,它們在Python 3.7中成爲關鍵字




修改pyspider裏的async關鍵字

到python安裝目錄下,找到這三個文件,Ctrl + H ,將裏面的 async 替換爲任何非關鍵字之外的參數,好比 async123,而後保存

  • Lib\site-packages\pyspider\run.py
  • Lib\site-packages\pyspider\webui\app.py
  • Lib\site-packages\pyspider\fetcher\tornado_fetcher.py(這個文件裏的async記得區分大小寫)

若是忘記安裝目錄,能夠用pip --version查看




最後修改一個文件,解決這個問題:Deprecated option 'domaincontroller': use 'http_authenticator.domain_controller' instead.

  • Lib\site-packages\pyspider\webui\webdav.py
將209行的
'domaincontroller': NeedAuthController(app),

修改成
'http_authenticator': {
        'HTTPAuthenticator': NeedAuthController(app),
    },

修改前

修改後




大功告成



瀏覽器打開localhost:5000

相關文章
相關標籤/搜索