crawlSpider是根据链接提取器来获取具体页面数据
在普通的scrapy爬虫中,parse函数提前完当前页面数据之后获取下一页数据调用parse解析函数,重新进行发送请求
crawlSpider实际上可以理解为:链接提取器 从链接中能够获取具体数据
crawlSpider则是通过正则表达式进行匹配只要是满足某个等待的url都会对具体数据进行爬取
增加了可以爬取数据的新的规则只要是满足该规则就会对数据进行提取,就是替代了scrapy.Request
创建爬虫项目 python -m scrapy startproject project_name
创建crawl爬虫 python -m scrapy genspider spider_name url
运行crawl爬虫 python -m scrapy crawl spider_name
LinkExtractor 链接提取器通过链接来或许相应的页面数据
参数有:allow允许的url 只要是满足该正则表达式的url地址即可允许访问和提取数据
deny禁止的url 所有满足该正则表达式的url地址则不会被提取
allow_domain 允许的域名 只有在这里面指定的域名url才会被提取
deny_domain 禁止的域名 所有在里面指定的域名不会被提取
restrict_xpath 严格的xpath 和allow共同过滤链接 具体查找某一个模块中的链接
Rule 在网页中提取的规则
参数有:link_extractor一个link对象用来定义爬取规则 也就是网页链接
callback 定义的是爬取的网页用哪个爬虫提取器的函数调用
follow 指定该规则从response中提取的连接是否需要跟进
process_links 从连接提取器过来的链接传给process_links,用来过滤不需要爬取的链接
网友评论