«

crawlspider爬虫类

时间:2023-3-1 18:53     作者:wen     分类: Python


crawlspider 继承自Spider爬虫类

可以自动根据规则提取链接并且告诉你给引擎

一、插件crawlspider爬虫

scrapy genspider -t crawl name domains

import scrapy
from scrapy.linkextractors import LinkExtractor
from scrapy.spiders import CrawlSpider, Rule

# crawlspide经常应用于数据在一个页面上进行采集的情况,如果数据不在一个页面上,这个时候通常使用spider
class TencentCrawlSpider(CrawlSpider):
    name = 'wenxk'
    allowed_domains = ['wenxk.top']
    start_urls = ['https://wenxk.top/']

    # 链接提取规则
    rules = (
        # Rule类生产链接提取规则对象
        # LinkExtractor用于设置链接提取规则,一般使用allow参数,接收正在表达式
        # follow参数决定是否在连接提取器提取的链接对应的响应中继续应用链接提取器提取链接

        # 设置
        Rule(LinkExtractor(allow=r'https://wenxk.top/node/\d+'), callback='parse_item', follow=False),

        # 设置翻页提取规则
        Rule(LinkExtractor(allow=r'https://wenxk.top/\?page=\d+'), 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()

        item['url'] = response.url
        return item

注意:在crawl_paider中不能重写parse方法

标签: 爬虫