刮痧+;EclipsePydev:如何设置调试器?
我已经用我的Scrapy项目成功地安装了Eclipse 我通过设置一个新的运行/调试配置来实现:刮痧+;EclipsePydev:如何设置调试器?,eclipse,pydev,scrapy,Eclipse,Pydev,Scrapy,我已经用我的Scrapy项目成功地安装了Eclipse 我通过设置一个新的运行/调试配置来实现: 其主要模块为我链接到Scrapy/usr/local/bin/Scrapy(我发现使用cmdline.py的建议,但在我的计算机上失败了(OSX Lion&Scrapy是通过easy_安装安装的) 在我的例子中定义发送“crawl ny”的参数,就像使用Scrapy命令行一样 设置正确的工作目录(本例中为${workspace\u loc:My Project/src}) Eclipse可以成功
- 其主要模块为我链接到Scrapy/usr/local/bin/Scrapy(我发现使用cmdline.py的建议,但在我的计算机上失败了(OSX Lion&Scrapy是通过easy_安装安装的)
- 在我的例子中定义发送“crawl ny”的参数,就像使用Scrapy命令行一样
- 设置正确的工作目录(本例中为${workspace\u loc:My Project/src})
Eclipse可以成功启动我的项目,但我没有debbuger。我缺少断点和变量检查,有人知道如何在这个环境中设置debbugger吗?好吧,如果您已经从Eclipse内部正确运行了debbugger,这不就是在调试模式下运行它的问题吗 例如:如果您按照以下说明操作:(关于“始终启动先前启动的应用程序”的设置),在常规模式下运行模块后,只需按F11键以调试模式运行即可。
- 将整个scrapy项目文件夹保存在PyDev下
- 您需要将主模块设置为scrapy/cmdline.py
- 在您的情况下,将arg设置为
crawl ny
以上建议对我都不起作用。事情会顺利进行,但不会触发断点 我在本地项目中添加了一个main.py文件,并连接到scrapy命令行,如下所示:
import scrapy.cmdline
def main():
scrapy.cmdline.execute(argv=['scrapy', 'crawl', 'wiki'])
if __name__ =='__main__':
main()
这可以很容易地进一步改进,以便传入spider名称,使每个spider具有不同的调试配置。以下是我如何在项目目录之外的虚拟环境中使用Scrapy包解决我的环境中的问题: 1) 从项目内部创建指向cmdline.py的simlink,类似于:
ln -s ../venv/lib/python3.4/site-packages/scrapy/cmdline.py cmdline.py
2) 刷新项目以便可以看到它,然后将其设置为调试配置中的主模块
3) 在调试配置的“Arguments”选项卡中,它显示“Working Directory”,选择Other,然后输入或使用按钮导航到项目中的Scrapy目录。我认为自定义主模块会禁用此功能。我知道如何使用Eclipse,但调试模式不起作用。