爬虫笔记(五) - 关于Scrapy 全站遍历Crawlspider

首先要感谢小白进阶之Scrapy第二篇(登录篇)
笔者是爬取了www.haoduofuli.wang,可惜挂掉了。所以我转移了目标~~~
目标站点:www.cuiqingcai.com
代码已经上存到github下载

导入库

假设你会使用scrapy创建项目,我们直接开始,再spider文件夹下面新建一个blog.py的文件

# CrawlSpider与Rule配合使用可以起到历遍全站的作用、Request干啥的我就不解释了
from scrapy.spiders import CrawlSpider, Rule, Request
# 配合Rule进行URL规则匹配
from scrapy.linkextractors import LinkExtractor

简单例子

详细可以参考Scrapy中文文档Crawlspider的例子

# CrawlSpider与Rule配合使用可以起到历遍全站的作用、Request干啥的我就不解释了
from scrapy.spiders import CrawlSpider, Rule, Request
# 配合Rule进行URL规则匹配
from scrapy.linkextractors import LinkExtractor

class myspider(CrawlSpider):
    name = 'cqc'
    allowed_domains = ['cuiqingcai.com']
    count_all = 0
    url_all = []
    start_urls = ['http://cuiqingcai.com']
    label_tags = ['爬虫', 'scrapy', 'selenium', 'selenium']

    rules = (
        Rule(LinkExtractor(allow=('\d+\.html$',)), callback='parse_item', follow=True),
    )

    def parse_item(self, response):
        print(response.url)

代码要点:

  • 继承CrawlSpider
  • Rule里面的allow用的是正则表达式,根据需要写

你会很惊讶发现就这短短的十几行代码就可以爬整个网站的代码抓下来了,


爬虫笔记(五) - 关于Scrapy 全站遍历Crawlspider_第1张图片
原理图
爬虫笔记(五) - 关于Scrapy 全站遍历Crawlspider_第2张图片
爬取结果

结果展示

爬虫入门


Python爬虫入门1之综述
Python爬虫入门2之爬虫基础了解
Python爬虫入门3之Urllib库的基本使用
Python爬虫入门4之Urllib库的高级用法
Python爬虫入门5之URLError异常处理
Python爬虫入门6之Cookie的使用
Python爬虫入门7之正则表达式

爬虫利器


Python爬虫利器1之Requests库的用法
Python爬虫利器2之BeautifulSoup的用法
Python爬虫利器3之Xpath语法与lxml库的用法
Python爬虫利器4之PhantomJS的用法
Python爬虫利器5之Selenium的用法
Python爬虫利器6之PyQuery的用法

爬虫进阶


Python爬虫进阶1之爬虫框架概述
Python爬虫进阶2之PySpider框架安装配置
Python爬虫进阶3之Scrapy框架安装配置
Python爬虫进阶4之PySpider的用法
Python爬虫进阶5之多线程的用法
Python爬虫进阶6之多进程的用法
Python爬虫进阶7之设置ADSL拨号服务器代理

爬虫实战


Python爬虫实战1之爬取糗事百科段子
Python爬虫实战2之爬取百度贴吧帖子
Python爬虫实战3之实现山东大学无线网络掉线自动重连
Python爬虫实战4之抓取淘宝MM照片
Python爬虫实战5之模拟登录淘宝并获取所有订单
Python爬虫实战6之抓取爱问知识人问题并保存至数据库
Python爬虫实战7之计算大学本学期绩点
Python爬虫实战8之利用Selenium抓取淘宝匿名旺旺

视频教程


Python爬虫学习系列教程
Python3爬虫视频学习教程

小白系列


小白学爬虫系列教程
小白进阶之Scrapy第1篇
小白进阶之Scrapy第2篇(登录篇)
Scrapy分布式的前篇–让redis和MongoDB安全点
小白进阶之Scrapy第3篇(基于Scrapy-Redis的分布式以及cookies池)
小白进阶之Scrapy第4篇(图片下载管道篇)
小白爬虫第1弹之健壮的小爬虫
小白爬虫第2弹之抓取妹子图
小白爬虫第3弹之去重去重
小白爬虫第4弹之爬虫快跑(多进程+多线程)

杂记系列


Scrapy小技巧-MySQL存储
利用Scrapy爬取知乎用户详细信息并存至MongoDB
免登录新浪微博爬虫系列之第一篇单博主微博及评论数据

你可能感兴趣的:(爬虫笔记(五) - 关于Scrapy 全站遍历Crawlspider)