pycharm调试scrapy

我是使用pycharm编写的程序,因为新手嘛,ide的很多功能都很方便,这里说下pycharm调试scrapy程序:

我们在运行爬虫时是调用scrapy程序,其第一个参数是crawl,在linux中使用下which scrapy我的输出是:

1
2
tenshine@tenshine:~$ which scrapy
/usr/bin/scrapy

然后用编辑工具打开这个文件,内容如下:

1
2
3
4
5
6
7
8
import re
import sys
from scrapy.cmdline import execute
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
sys.exit(execute())

然后会发现scrapy是从cmdline导入东西,我们运行爬虫的功能就是从这个文件中导入的execute,所以去找这个文件,这个文件就是cmdline.py,我的系统是ubuntu,先sudo updatedb一下,然后locate cmdline.py

可能有几个同名的文件,但是看一下它在哪个目录中,我的目录是/home/tenshine/.local/lib/python2.7/site-packages/scrapy/cmdline.py,所以在pycharm的调试界面的Script项中填写此路径,然后Script parameters填写crawl 爬虫name,还需要填写一项Working directory,这是项目的路径,如果不填写这项的话会提示无法找到命令,所以最终的结果如下: