python - 打包成.exe文件后,scrapy项目中没有名为“XXX.pipeline”的模块错误
问题描述
它是一个基于 PyQt5 和 Scrapy 的项目。在使用 Pyinstaller 打包之前可以正常使用。打包我的项目后,日志将在
2021-09-14 23:58:10 [scrapy.middleware] INFO: Enabled spider middlewares:
['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware',
'scrapy.spidermiddlewares.offsite.OffsiteMiddleware',
'scrapy.spidermiddlewares.referer.RefererMiddleware',
'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware',
'scrapy.spidermiddlewares.depth.DepthMiddleware']
在我调用 scrapy.cmdline.execute 函数 3 次后,错误显示为,
2021-09-15 00:01:01 [twisted] CRITICAL:
Traceback (most recent call last):
File "twisted\internet\defer.py", line 1445, in _inlineCallbacks
File "scrapy\crawler.py", line 87, in crawl
File "scrapy\crawler.py", line 101, in _create_engine
File "scrapy\core\engine.py", line 70, in __init__
File "scrapy\core\scraper.py", line 71, in __init__
File "scrapy\middleware.py", line 53, in from_crawler
File "scrapy\middleware.py", line 34, in from_settings
File "scrapy\utils\misc.py", line 61, in load_object
File "importlib\__init__.py", line 127, in import_module
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'mycrawler.pipelines'
它告诉我问题在于模块的导入。但他的困难在于,有问题的代码在 Scrapy 的源代码中。那么如何解决这个BUG呢?
解决方案
推荐阅读
- winforms - 如何从 .Net 5 Winforms 应用程序访问 Dispatcher
- firebase - Firebase 部署错误 - 不允许配置过期模式
- netsuite - 如何删除 pageInit 客户端脚本上的行
- reactjs - 如何在映射中选择更改特定变量?
- ios - 如何生成可以在 iOS 视频播放器中显示的视频输出?
- javascript - 使用 Javascript 检测边缘(铬)浏览器
- kotlin - 没有足够的信息来推断类型变量 T1
- azure - DevOps 中的任务在 5 天内到期时向分配的用户发送通知
- r - 在 r 中具有 NA 值的数据帧列表上计算 Z 分数
- java - 如何访问 Optional 类型的变量
在java中?