一.原因:
由于pycharm中没有scrapy的一个模板,所有没办法直接在scrapy文件中调试,所有我们需要写一个自己的main.py文件,在文件里面调用命令行,来实现scrapy的一个调试。(在scrapy中可以调试,可以让我们的开发效率高)
二.注意点:
字爬虫文件中设置断点,但是需要在自己写的main.py文件中用debug进行调试,然后返回到爬虫文件观看调试结果即可。
三.编写main.py文件:
from scrapy.cmdline import execute #调用此函数可以执行scrapy的脚本
import sys
import os
# 用来设置工程目录,有了它才可以让命令行生效
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
#os.path.abspath(__file__) 用来获取当前py文件的路径
#os.path.dirname() 用来获取文件的父亲的路径
#调用execute()函数执行scarpy的命令 scary crawl 爬虫文件名字
execute(['scarpy','crawl','jobbole'])
我们可以看一下scarpy命令行 :scarpy crawl 爬虫文件名字 (下图截取了部分运行之后的代码)
四.修改setting,py问价中的一个参数:因为scrapy默认会读取每个网站的root协议,会把不符合root协议的url过滤掉,所有我们需要设置scrapy不需要遵守root协议。