20190817win7 python3.7安装运行Pyspider

简介

本以为一个pip install的事,没想到遇到3个小坑才顺利安装完.

小坑001:安装时报错:Please specify --curl-dir=/path/to/built/libcurl

windows需要额外手动安装
PycURL
点击上面链接找到适合自己系统跟python版本的文件用pip安装.

本次使用的机器是win7 64位,python3.7 32位,选择的文件见下面示例语句

pip install your_download_file_full_path_name
eg:
pip install G:\DevelopSetup\pycurl-7.43.0.3-cp37-cp37m-win32.whl

小坑002:运行时报错:async=True, get_object=False, no_input=False):SyntaxError: invalid syntax

pip install pyspider

报错.

async=True, get_object=False, no_input=False):
    ^
SyntaxError: invalid syntax

搜索引擎走一波
原因:
因为python3.7把async作为关键字了,所以导致的报错.
解决方案:
用PyCharm(或者其他支持全项目查询/替换的IDE)打开你Python安装的spider路径

供参考,本人路径如下
C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\pyspider

批量替换async->其他不被项目使用的变量名为了方便回退替换(比如我已经替换完,将async->aasync了,见下图)
替换时建议勾选匹配全词words匹配大小写Mach case,提高准确率避免替换多了不必要的内容.
在这里插入图片描述

小坑003:运行时报错: - Deprecated option ‘domaincontroller’: use ‘http_authenticator.domain_controller’ instead.

启动pyspider报错.

 raise ValueError("Invalid configuration:\n - " + "\n - ".join(errors))
        ValueError: Invalid configuration:

        Deprecated option ‘domaincontroller’: use ‘domain_controller’ instead.

原因:
spider依赖库版本问题
解决方案:
继续用Pycharm编辑项目中的webdav.py文件

连按两下shift,输入webdav.py
不用pycharm直接找到文件编辑也OK
参考路径: …/python3.7/site-packages/pyspider/webui/webdav.py

'domaincontroller': NeedAuthController(app),
#修改为:
'http_authenticator':{ 'HTTPAuthenticator':NeedAuthController(app) },

之后再启动pyspider成功~

参考资料

  1. Windos下安装pyspider报错:Please specify --curl-dir=/path/to/built/libcurl解决办法
  2. python 3.7 pyspider all 报错(已解决)
  3. 小坑003
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值