Python爬虫-Scrapy框架(四)- 内置爬虫文件 - 4.2 初探Crawl Spider

Python爬虫-Scrapy框架(四)- 内置爬虫文件 - 4.2 初探Crawl Spider

写在前面

之前一直采用Scrapy框架中的基础爬虫,但是除此之外,Scrapy提供了多种爬虫,用于满足不同的需求,这里对内置爬虫做一个更加深入的认识,同时开始学习Crawl Spider的使用方法。

初探Crawl Spider

打开cmd命令行程序,通过cd命令进入之前的项目文件,通过以下命令查看Scrapy框架中提供的所有内置爬虫类型。

C:\Users\Lenovo\Desktop\search_scrapy>scrapy genspider -l
Available templates:
basic
crawl
csvfeed
xmlfeed

其中basic就是之前使用的基础爬虫;在官方给出的说明文档中,crawl的释义是用来爬取结构有规律的网站;其余的两个内置爬虫适合用来爬取文件项目等,在此不做详细介绍。
接下来从创建Crawl Spider项目开始,对Crawl Spider的使用进行学习。

创建Crawl Spider项目

同样在命令行程序中进入之前的项目文件目录,通过命令创建新的Crawl Spider文件。

C:\Users\Lenovo\Desktop\search_scrapy>scrapy genspider -t crawl search_crawl csdn.com
Created spider ‘search_crawl’ using template ‘crawl’ in module:
search_scrapy.spiders.search_crawl

这里对使用到的命令做一个简单的解释,genspider是shell的另外一个命令,-t指代的是template,即以当前爬虫项目为模板生成新的爬虫文件,crawl给出了爬虫文件类型,随后是爬虫文件的命名以及爬虫项目允许的域名。
随后我们可以在项目目录中找到新创建好的crawl爬虫文件。
crawl
现在查看一下当前项目中存在的爬虫。

C:\Users\Lenovo\Desktop\search_scrapy>scrapy list
search
search_crawl

和预想的一样,项目中增加了一个名字为search_crawl的爬虫。

对比Basic与Crawl

还记得最初创建爬虫项目时,爬虫文件中自带的框架有哪些吗?
search_basic.py_(Basic类型的爬虫文件初识状态)

# -*- coding: utf-8 -*-
import scrapy


class SearchBasicSpider(scrapy.Spider):
    name = 'search_basic'
    allowed_domains = ['example.com']
    start_urls = ['http://example.com/']

    def parse(self, response):
        pass

接下来查看新创建的Crawl类型的爬虫文件自带的框架结构。
search_crawl.py_(Crawl类型的爬虫文件初识状态)

# -*- coding: utf-8 -*-
import scrapy
from scrapy.linkextractors import LinkExtractor
from scrapy.spiders import CrawlSpider, Rule


class SearchCrawlSpider(CrawlSpider):
    name = 'search_crawl'
    allowed_domains 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值