当我使用pycharm创建一个项目并生成一个Spider时,一切正常。
scrapy start project xxx
cd xxx
scrapy genspider abc
现在,我用scrapy list
来显示它,结果是:
过一会儿,当我再次使用此命令时,这是错误的。错误是:
D:\PyCharm\python workspace\python cookbook\project\funds>scrapy list
Traceback (most recent call last):
File "d:\python\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "d:\python\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "D:\Python\Scripts\scrapy.exe\__main__.py", line 7, in <module>
File "d:\python\lib\site-packages\scrapy\cmdline.py", line 142, in execute
cmd.crawler_process = CrawlerProcess(settings)
File "d:\python\lib\site-packages\scrapy\crawler.py", line 280, in __init__
super(CrawlerProcess, self).__init__(settings)
File "d:\python\lib\site-packages\scrapy\crawler.py", line 152, in __init__
self.spider_loader = self._get_spider_loader(settings)
File "d:\python\lib\site-packages\scrapy\crawler.py", line 146, in _get_spider_loader
return loader_cls.from_settings(settings.frozencopy())
File "d:\python\lib\site-packages\scrapy\spiderloader.py", line 60, in from_settings
return cls(settings)
File "d:\python\lib\site-packages\scrapy\spiderloader.py", line 24, in __init__
self._load_all_spiders()
File "d:\python\lib\site-packages\scrapy\spiderloader.py", line 46, in _load_all_spiders
for module in walk_modules(name):
File "d:\python\lib\site-packages\scrapy\utils\misc.py", line 77, in walk_modules
submod = import_module(fullpath)
File "d:\python\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "D:\PyCharm\python workspace\python cookbook\project\funds\funds\spiders\FundSpider.py", line 6, in <module>
from project.funds.funds.items import FundsItem
ModuleNotFoundError: No module named 'project'
我不知道哪里出了问题。
我创建一个新项目并关闭PyCharm并重新启动它。但是什么也没发生。命令scrapy list
返回真实结果。但是过了一会儿,那又会是错误的。
环境是python3.7和scrapy2.1。
谢谢您的帮助!