您的位置:首页 > 娱乐 > 明星 > ModuleNotFoundError: No module named ‘scrapy.utils.reqser‘

ModuleNotFoundError: No module named ‘scrapy.utils.reqser‘

2024/12/23 15:11:36 来源:https://blog.csdn.net/Awesome_py/article/details/140663835  浏览:    关键词:ModuleNotFoundError: No module named ‘scrapy.utils.reqser‘

在scrapy中使用scrapy-rabbitmq-scheduler会出现报错

ModuleNotFoundError: No module named 'scrapy.utils.reqser'原因是新的版本的scrapy已经摒弃了该方法,但是scrapy-rabbitmq-scheduler 没有及时的更新,所以此时有两种解决方法

方法一.将scrapy回退至旧版本,找到对应的旧版本

方法二.更改scrapy-rabbitmq-scheduler的源码,我已经重新发了新版本的包

pip install scrapy-rabbitmq-task

然后再次尝试运行代码,发现代码已正常

其他配置都不改变

在spider爬虫文件文件添加

    # 请求队列queue_name = 'scrape'# 结果队列items_key = 'scrape.result'custom_settings = {"COOKIES_ENABLED": "False",# 指定重试的http状态码(重新加回队列重试)"SCHEDULER_REQUEUE_ON_STATUS" :[500],'SCHEDULER': "scrapy_rabbitmq_scheduler.scheduler.SaaS",'RABBITMQ_CONNECTION_PARAMETERS': 'amqp://acount:111@2024@127.0.0.1:5672/?heartbeat=0','MEDIA_ALLOW_REDIRECTS': True,'RABBITMQ_CONFIRM_DELIVERY': False,'ALLOW_REDIRECTS': True,'RETRY_ENABLED': True,'RETRY_TIMES': 5,'DOWNLOAD_TIMEOUT': 50,'RETRY_HTTP_CODES': [429, 304, 500, 503],# 指定下载器中间件, 确认任务是否成功"DOWNLOADER_MIDDLEWARES": {'scrapy_rabbitmq_scheduler.middleware.RabbitMQMiddleware': 999},# 指定item处理方式, item会加入到rabbitmq中'ITEM_PIPELINES': {'scrapy_rabbitmq_scheduler.pipelines.RabbitMQPipeline': 301,},'FILTER_EMPTY_ITEM': True,}

问题解决

注:我这里采用版本是Scrapy==2.11.2

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com