一、CrawlSpider
CrawlSpider类是Spider的一个子类
二、使用步骤
1. 使用命令创建爬虫文件
- scrapy genspider -t crawl 文件名称 www.xxx.com
2. 代码解析
import scrapy
from scrapy.linkextractors import LinkExtractor
from scrapy.spiders import CrawlSpider, Rule
class SunSpider(CrawlSpider):
name = 'sun'
# allowed_domains = ['www.xxx.com']
start_urls = ['http://www.xxx.com/']
# 链接提取器
link = LinkExtractor(allow=r'Items/')
rules = (
# 实例化一个Rule对象 (规则解析器)
Rule(link, callback='parse_item', follow=True),
)
def parse_item(self, response):
item = {}
#item['domain_id'] = response.xpath('//input[@id="sid"]/@value').get()
#item['name'] = response.xpath('//div[@id="name"]').get()
#item['description'] = response.xpath('//div[@id="description"]').get()
return item
三、链接提取器
根据指定规则 (allow=‘正则表达式’) 进行指定链接的提取
link = LinkExtractor(allow=r'Items/')
四、规则解析器
将链接提取器提取到的链接进行指定规则的解析操作