我正在使用Python 2.7开发Scrapy 0.20。我发现PyCharm有一个很好的Python调试器。我想用它来测试我的抓取蜘蛛。有谁知道怎么做吗?
我尝试过的东西
实际上,我尝试将爬行器作为脚本运行。因此,我构建了该脚本。然后,我尝试将我的Scrapy项目作为模型添加到PyCharm中,如下所示:
File->Setting->Project structure->Add content root.
但我不知道我还能做什么
发布于 2014-03-08 00:04:28
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命令和爬行器填充脚本参数。在本例中为crawl IcecatCrawler
。
如下所示:
把你的断点放在你的爬虫代码中的任何地方,它应该可以在™中工作。
发布于 2018-08-21 21:21:19
从2018.1开始,这变得容易多了。现在,您可以在项目的Run/Debug Configuration
中选择Module name
。将其设置为scrapy.cmdline
,并将Working directory
设置为scrapy项目(其中包含settings.py
的项目)的根目录。
如下所示:
现在,您可以添加断点来调试代码。
发布于 2016-04-15 18:08:30
我在使用Python3.5.0的虚拟环境中运行scrapy,将"script“参数设置为/path_to_project_env/env/bin/scrapy
为我解决了这个问题。
https://stackoverflow.com/questions/21788939
复制相似问题