《python3网络爬虫开发实战》学习笔记:pyspider all报错的解决

本文解决PyspiderAll在运行时遇到的三个常见报错:Python保留字冲突、WsgiDAV版本不兼容及werkzeug导入错误。通过修改保留字、降级依赖库版本和正确导入类等步骤,确保爬虫框架正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

'http_au@[TOC](pyspider all 报错解决)

pyspider all 出现报错,一共三个报错。
之前有两个报错,csdn上的大神已经解决了。参见《pyspider all运行出错:①SyntaxError: invalid syntax,② - Deprecated option ‘domaincontroller’: use 'http_au》。前面这两个图也是来源此作者

第一个报错:
在这里插入图片描述

主要是async是python3.7的保留字,pyspider库中的有些文件与之重复而出现报错,就三个文件,这三个文件的找法可以参照《windows客户端pip安装pyspider完全指南(SyntaxError:invalid syntax、async语法报错、非引用替换关键字、全局查找针对性替换、Pycharm)》,async的具体位置在pycharm中会有红色标注,替换的词可以任意选择,我就在后面加了一个下划线即“async_”;

第二个报错:
在这里插入图片描述

这是由于WsgiDAV发布了新版本 pre-release 3.x,所以只要把版本降下来就好了。将wsgidav替换为2.4.1,在命令行下运行
python -m pip install wsgidav==2.4.1。

第三个报错:
在这里插入图片描述
如报错所说是import错误。werkzeug.wsgi中没有class DispatcherMiddleware。这个class DispatcherMiddleware在werkzeug\middleware中,path显示C:\Users\Administrator\AppData\Local\Programs\Python\Python37\Lib\site-packages\werkzeug\middleware\dispatcher.py。
然后在app.py中64行输入“from werkzeug.middleware.dispatcher import DispatcherMiddleware” 即可 如下图
在这里插入图片描述
之后,输入pyspider all 就好了
在这里插入图片描述
正常运行如下:
在这里插入图片描述
[1]: https://blog.csdn.net/u012424313/article/details/89511520?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
[2]: https://blog.csdn.net/qq_40916793/article/details/100163293?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值