Scrapyd部署项目后启动报错,无法找到模块No module named xxxx(已解决)

wylc123 1年前 ⋅ 811 阅读

工具模块应该放到spiders文件夹下,否则使用

scrapyd-deploy aiq -p aiqSpider

命令打包时会遍历不到。

scrapyd没有将文件/模块成功打包

通过查看爬虫目录下的project.egg-info(不同版本可能名字不同,但会有egg存在)

目录结构为以下

├── dependency_links.txt
├── entry_points.txt
├── PKG-INFO
├── SOURCES.txt
└── top_level.txt
其中SOURCES.txt文件存放的是通过scrapyd-deploy命令打包的源码码位置,如果文件中不存在对应路径,则远程启动爬虫无法导入对应的模块

# SOURCES.txt
setup.py
spider/__init__.py
spider/items.py
spider/middlewares.py
spider/pipelines.py
spider/settings.py
spider/spiders/__init__.py
spider/spiders/xxx.py
spider/spiders/utils.py
spider/utils/__init__.py
spider/utils/my_dupefilter.py
project.egg-info/PKG-INFO
project.egg-info/SOURCES.txt
project.egg-info/dependency_links.txt
project.egg-info/entry_points.txt
project.egg-info/top_level.txt
第二种解决方案手动添加路径,再启动爬虫,若继续报错,使用scrapy-deploy命令重新部署,再启动爬虫即可


相关文章推荐

全部评论: 0

    我有话说: