python3.7与pyspider的坑

网络上安装pyspider的坑有很多,但都不如我今天的大,困扰了我几天,终于解决了

Traceback (most recent call last):
  File "/ffk_learn/software/Python-3.7.0/ffk_py/bin/pyspider", line 7, in <module>
    from pyspider.run import main
  File "/ffk_learn/software/Python-3.7.0/ffk_py/lib/python3.7/site-packages/pyspider/run.py", line 231
    async=True, get_object=False, no_input=False):
        ^
SyntaxError: invalid syntax

一直抱着个错误,后来才发现,是因为async从python3.7开始不能用作参数名了,将所有脚本里面的async换一个名字即可,当然最好还是要pyspider的大佬更新下pyspider.脚本不多,一共两个脚本

1 ffk_py/lib/python3.7/site-packages/pyspider/run.py

2 ffk_py/lib/python3.7/site-packages/pyspider/fetcher/tornado_fetcher.py

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

遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!

安装完爬虫框架pyspider之后,使用pyspider all 命令,输入http://localhost:5000运行就出现上述错误

原因是因为WsgiDAV发布了版本 pre-release 3.x。

解决方法如下:

在安装包中找到pyspider的资源包,然后找到webui文件里面的webdav.py文件打开,修改第209行即可。

'domaincontroller': NeedAuthController(app),

修改为:

'http_authenticator':{
        'HTTPAuthenticator':NeedAuthController(app),
    },

然后再执行pyspider all就能够通过http://localhost:5000打开页面了。

posted @ 2022-10-07 20:37  I'm_江河湖海  阅读(33)  评论(0)    收藏  举报