我的当当图书爬虫

一、项目简介

我使用了scrapy异步框架来爬取当当网的数据,客户输入关键词,如:python,然后开始爬取关键词相关的图书数据,我简单进行了增量爬取的处理,数据爬下来后我使用了matplotlib实现数据可视化,画了几个相关统计数据的图表,如低价图书推荐、出版社排行榜、新书推荐等,最后生成word报告就完成了自己的爬虫。

二、爬取数据(scrapy框架)

之前课上老师讲过用requests来爬取网页,但是感觉效率不是很高,就在网上搜索到scrapy框架,实现了异步爬取,大大提高了效率。

scrapy框架的简单介绍

scrapy 底层是异步框架 twisted ,并发是最大优势。scrapy 是异步的, 吞吐量很高. requests 爬完一个再爬一个, 一分钟爬不了几个页面. 当然你也可以自己用异步的方式去使用 requests, 那就是自己写了一个类似 scrapy 的东西了, 代码量和简单的使用 requests 就不是一个量级了.另外scrapy也实现了简单去重,已经爬取过的网页就不会再爬取。
scrapy整体架构
scrapy是一个框架,能有效减少代码量,流程如下:
1. 首先获取第一个URL的初始请求,当请求返回后调取一个回调函数。第一个请求是通过调用start_requests()方法。该方法默认从start_urls中的Url中生成请求,并执行解析来调用回调函数。
2. 在回调函数中,你可以解析网页响应并返回项目对象和请求对象或两者的迭代。这些请求也将包含一个回调,然后被Scrapy下载,然后有指定的回调处理。
3. 在回调函数中,你解析网站的内容,我使用的是Xpath选择器(但是你也可以使用BeautifuSoup, lxml或其他任何你喜欢的程序),并生成解析的数据项。
4. 最后,从蜘蛛返回的项目通常会进驻到项目管道。在项目管道中实现你自己的数据处理功能。

scrapy框架的安装

我的电脑安装scrapy有点麻烦,需

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值