使用scrapy框架爬取当当网

时间:2020-12-06 01:11:04

使用scrapy框架爬取当当网

1.创建Scrapy项目:

在命令行中使用 scrapy startproject 项目名字 命令创建一个Scrapy项目,并进入该项目目录。

使用scrapy框架爬取当当网

2.定义Spider:

在该项目中,使用Spider定义要爬取的网站和数据提取规则。例如,要爬取当当网上所有书籍信息,可以创建一个名为dangdang_spider.py的Spider文件,并实现scrapy.Spider类。需要定义起始URL、如何跟踪链接以及如何提取数据等操作。

使用scrapy框架爬取当当网

2.1定义items

在items中定义要爬取的数据

使用scrapy框架爬取当当网

2.2通过response.xpath()解析数据

使用scrapy框架爬取当当网

执行了start_urls之后 执行的方法 方法中的response 就是返回的那个对象

# 相当于 response =urllib.request.urlopen()
#     response = requests.get()

使用scrapy框架爬取当当网

3.配置Scrapy设置

3.1君子约定:

​ robots协议也称爬虫协议、爬虫规则等,是指网站可建立一个robots.txt文件来告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取,而搜索引擎则通过读取robots.txt文件来识别这个页面是否允许被抓取。

通俗讲就是网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。

我们就不需要遵守了(doge)

使用scrapy框架爬取当当网

注释掉即可了

3.2开通管道

使用scrapy框架爬取当当网

管道可以有很多个 那么管道是有优先级的 优先级的范围是1到1000 值越小优先级越高

上述代码就开通了双管道

4.数据处理

4.1解析数据

使用scrapy框架爬取当当网

4.2在管道中存储数据

使用scrapy框架爬取当当网

4.3在终端运行代码 scrapy crawl spider名称

最终下载到books文件和.json文件

使用scrapy框架爬取当当网使用scrapy框架爬取当当网

使用scrapy框架爬取当当网

源码的话太多了我就不放了,可以私信我获取。