Python爬虫 scrapy框架(四)CrawlSpider 链接提取器 LinkExtractor 规则解析器 Rule

scrapy框架

CrawlSpider

CrawlSpider:基于Spider的子类,继承父类的功能,且派生出自己的功能。

全站数据爬取的方式

  1. 基于Spider:手动请求发送
  2. 基于CrawlSpider:

基本使用

创建一个工程

scrapy startproject quanzhanPro

切换到工程目录

cd quanzhanPro

创建一个基于CrawlSpider类的爬虫文件

scrapy genspider -t crawl quanzhan wz.sun0769.com/political/index/politicsNewest

生成的爬虫文件

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


class QuanzhanSpider(CrawlSpider):
    name = 'quanzhan'
    allowed_domains = ['www.xxx.com']
    start_urls = ['http://www.xxx.com/']

    rules = (
        Rule(LinkExtractor(allow=r'Items/'), 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
链接提取器 LinkExtractor

根据指定规则(allow=‘正则’)提取符合规则的链接(会自动去重)
在这里插入图片描述

link = LinkExtractor(allow=r'id=1&page=/d+')
规则解析器 Rule

将链接提取器提取到的链接进行指定规则(callback)的解析操作
follow=True 全站数据爬取(进入到提取的页面继续提取匹配的链接)

Rule(LinkExtractor(allow=
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值