pyspider all [python3.7]报错 已解决

系统 2542 0

报错内容

            
               Traceback (most recent call last):
      File "/Library/anaconda3/bin/pyspider", line 6, in 
              
                
        from pyspider.run import main
      File "/Library/anaconda3/lib/python3.7/site-packages/pyspider/run.py", line 231
        async=True, get_object=False, no_input=False):
            ^
    SyntaxError: invalid syntax

              
            
          

原因是async和await从 python3.7 开始已经加入保留关键字中. 参考: What’s New In Python 3.7, 所以async不能作为函数的参数名.
改正:

1.修改/Library/anaconda3/lib/python3.7/site-packages/pyspider路径下的python文件中的async为shark(全部替换)

1.run.py
2.fetcher\tornado_fetcher.py
3.webui\app.py
使用替换命令(注意路径)

            
              sed -i '' 's/async/shark/g' run.py

sed -i '' 's/async/shark/g' tornado_fetcher.py

sed -i '' 's/async/shark/g' app.py 

            
          

2.降低WsgiDAV版本

            
              python -m pip install wsgidav==2.4.1

            
          

再运行 pyspider all 依然报错

            
              Error: Could not create web server listening on port 25555
[I 190621 11:14:50 result_worker:49] result_worker starting...
Error: Could not create web server listening on port 25555
[I 190621 11:14:51 processor:211] processor starting...
[I 190621 11:14:51 tornado_fetcher:638] fetcher starting...
[I 190621 11:14:51 scheduler:647] scheduler starting...
[I 190621 11:14:51 scheduler:782] scheduler.xmlrpc listening on 127.0.0.1:23333
[I 190621 11:14:51 scheduler:586] in 5m: new:0,success:0,retry:0,failed:0
[I 190621 11:14:51 app:76] webui running on 0.0.0.0:5000
Error: Could not create web server listening on port 25555
Error: Could not create web server listening on port 25555
Error: Could not create web server listening on port 25555
Error: Could not create web server listening on port 25555

            
          

解决方法:
Reboot the PC,or remove phantomjs can fix it
查看端口,然后 kill phantomjs
pyspider all [python3.7]报错 已解决_第1张图片

再运行pyspider all 成功
pyspider all [python3.7]报错 已解决_第2张图片
这时pyspider的Web服务就会在本地5000端口运行。直接在浏览器中打开http://localhost:5000/,即可进入pyspider的WebUI管理页面,这证明pyspider已经安装成功了。
pyspider all [python3.7]报错 已解决_第3张图片


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论