打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Pyspider安装遇到的几个坎
userphoto

2023.12.23 北京

关注

目录

1. 官网下载python安装包

2. 安装pip

3.  安装phantomjs

4. 安装pyspider

5. 运行pyspider

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

Deprecated option 'domaincontroller': use 'http_authenticator

cannot import name 'DispatcherMiddleware' from werkzeug.wsgi

tornado_fetcher:638] fetcher starting...卡着一直不动

6. pyspider运行成功效果图


   1. 官网下载python安装包

 https://wiki.python.org/moin/BeginnersGuide/Download

我用的windows10平台Python 3.8.3版本,这一步按照官网文档安装,没遇到大问题。python3版本安装,勾选上 add path to environment,就不再需要手动去环境变量中配置,包括python的家目录和Scripts两个Path环境变量

2. 安装pip

https://pip.pypa.io/en/stable/installing/

类似RedHat里面的yum 通过pip可以快速下载安装python软件 隐藏了背后复杂的下载安装的过程。

这一步按照官方文档安装,也没遇到大问题

需要注意的是,要安装最新版本的pip,不然安装不成功,会提示你去安装最新版

安装完,在python的Scripts会出现对应的pip文件,由于python安装过程中Scripts目录配置到了环境变量中,所以pip的安装就不再去配置PATH环境变量

3.  安装phantomjs

http://phantomjs.org/download.html

phantomjs是一个浏览器内核程序,可以在爬虫开发过程中,模拟浏览器渲染js和ajax显示的页面

浏览官方文档,下载对应版本安装,安装完成后,phantomjs的bin目录配置到PATH环境变量中

4. 安装pyspider

http://docs.pyspider.org/en/latest/

由于pip配置到了PATH环境变量,所以我们打开DOS窗口,任意目录下执行pip install pyspider,都可以安装pyspider

5. 运行pyspider

安装完成后,DOS窗口任意目录执行 pyspider all命令,启动pyspider,这一步遇到了几个问题

  • async=True, get_object=False, no_input=False SyntaxError: invalid syntax

  这是因为:asyncawait从 python3.7 开始已经加入保留关键字中,所以变量名和引用名为async的需要手工改成其它普通 变量名,例如改成:yibu。主要修改这三个模块:

pyspider->run.py、pyspider->fetcher->tornado_fetcher.py、webui>app.py

可以用这个工具去修改库文件或jar文件:https://www.jetbrains.com/pycharm/download/

  • Deprecated option 'domaincontroller': use 'http_authenticator

Pyspider的3.0及以上版本在安装时,会默认安装wsgidav的3.x版本,wsgidav的3.x版本目前仍然是测试版,相对于2.x更改了一些方法,所以pyspider all启动时,有上面的报错,针对这种情况。我们需要降低版本安装

卸载wsgidav的3.x版本:pip uninstall wsgidav

安装wsgidav的2.x版本:pip install wsgidav==2.4.1

  • cannot import name 'DispatcherMiddleware' from werkzeug.wsgi

这是因为我安装了Werkzeug 1.0.1版本,Werkzeug 1.0.1不存在DispatcherMiddleware类,我也采取降低版本安装

卸载Werkzeug 1.0.1版本:pip uninstall werkzeug

安装Werkzeug 0.16版本:  pip install werkzeug==0.16

  • tornado_fetcher:638] fetcher starting...卡着一直不动

pyspider安装会弹出防火墙对话框,选择允许就可以。也可以在DOS窗口关闭防火墙

NetSh Advfirewall set allprofiles state off  #关闭防火墙

Netsh Advfirewall show allprofiles            #查看防火墙状态

  • 刚开始我用的python-2.7.13,按照上面步骤往下走,进行到pip install pyspider这一步,提示我去安装pycurl

我从网站https://www.lfd.uci.edu/~gohlke/pythonlibs/,下载了多个版本的pycurl,尝试了多次去安装,提示我python2.7.13版本已经不支持pycurl的安装,不知道你有没有遇到过这个问题

6. pyspider运行成功效果图

http://localhost:5000

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
踩坑记:终于怀着忐忑的心情完成了对 python 爬虫扩展库 pyspider 的安装
pyspider all 会遇到的诸多拦路虎!(Python3.7)
安装pyspider出现的问题
在安装和使用pyspider中遇到的问题与解决
PySpider框架安装配置
小白学 Python 爬虫(6):前置准备(五)爬虫框架的安装
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服