爬虫项目实操三、用scrapy框架爬取豆瓣读书Top250的书名,出版信息和评分

本文介绍了如何使用Scrapy框架爬取豆瓣读书Top250的书名、出版信息和评分。首先讲解了Scrapy项目的创建和结构,接着详细阐述了在items.py中定义数据,spiders中编写爬虫代码,包括如何使用yield语句传递数据,以及如何设置USER_AGENT和处理robots协议。最后提到了运行Scrapy项目的方法以及数据存储的处理。
摘要由CSDN通过智能技术生成

安装方法:Windows:在终端输入命令:pip install scrapy;mac:在终端输入命令:pip3 install scrapy,按下enter键,再输入cd Python,就能跳转到Python文件夹。接着输入cd Pythoncode,就能跳转到Python文件夹里的Pythoncode子文件夹。最后输入一行能帮我们创建Scrapy项目的命令:scrapy startproject douban,douban就是Scrapy项目的名字。按下enter键,一个Scrapy项目就创建成功了。

项目目标:爬取豆瓣读书Top250的书名,出版信息和评分

目标url为:https://book.douban.com/top250?start=0
整个scrapy项目的结构,如下图
在这里插入图片描述
spiders是放置爬虫的目录。我们在spiders这个文件夹里创建爬虫文件,我们把这个文件命名为top250,大部分代码都需要在这个top250.py文件里编写。在top250.py文件里导入我们需要的模块:import scrapy , bs4
导入scrapy是我们要用创建类的方式写这个爬虫,我们所创建的类将直接继承scrapy中的scrapy.Spider类。这样,有许多好用属性和方法,就能够直接使用。

在Scrapy中,每个爬虫的代码结构基本都如下所示:

class DoubanSpider(scrapy.Spider): #定义一个爬虫类DoubanSpider,DoubanSpider类继承自scrapy.Spider类。
    name = 'douban'  #定义爬虫的名字,这个名字是爬虫的唯一标识。
    allowed_domains = ['book.douban.com']#定义允许爬虫爬取的网址域名(不需要加https://)。如果网址的域名不在这个列表里,就会被过滤掉。allowed_domains就限制了,我们这种关联爬取的URL,一定在book.douban.com这个域名之下,不会跳转到某个奇怪的广告页面。
    start_urls = ['https://book.douban.com/top250?start=0']#定义起始网址,就是爬虫从哪个网址开始抓取
    
    def parse(self, response):#parse是Scrapy里默认处理response的一个方法,中文是解析。
        print(response.text)
#这里我们并不需要写类似requests.get()的语句
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值