如何使用PyCharm调试Scrapy项目

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (317)

我正在使用Python 2.7开发Scrapy 0.20。我发现PyCharm有一个很好的Python调试器。我想用它测试我的Scrapy spiders。任何人都知道如何做到这一点?

我所尝试过的

其实我试图把spiders作为脚本来运行。结果,我建立了这个脚本。然后,我尝试将我的Scrapy项目添加到PyCharm中,像这样:

File->Setting->Project structure->Add content root.
提问于
用户回答回答于

scrapy命令是一个python脚本,这意味着你可以从PyCharm中启动它。

当你检查scrapy二进制文件(which scrapy)时,会注意到这实际上是一个python脚本:

#!/usr/bin/python

from scrapy.cmdline import execute
execute()

这意味着像这样的命令 scrapy crawl IcecatCrawler也可以像这样执行:python /Library/Python/2.7/site-packages/scrapy/cmdline.py crawl IcecatCrawler

尝试找到scrapy.cmdline软件包。在我的情况下,位置在这里:/Library/Python/2.7/site-packages/scrapy/cmdline.py

在脚本中使用该脚本在PyCharm内创建运行/调试配置。用scrapy命令和spiders填充脚本参数。在这种情况下crawl IcecatCrawler

就像这样:

将断点放在爬行代码中的任何位置,它应该可以运行。

用户回答回答于

在项目的爬虫文件夹上创建Python文件。我用了main.py。

Project

Crawler

Crawler

Spiders

...

main.py

scrapy.cfg

在你的main.py里面,把下面的代码放在下面。

from scrapy import cmdline    
cmdline.execute("scrapy crawl spider".split())

你需要创建一个“Run Configuration”来运行main.py。

如果在代码上放置一个断点,它就会停止。

扫码关注云+社区

领取腾讯云代金券