你每年能读几本书?

2018年,我国人均数字阅读量为12.4本;

2019年,我国成年人均纸质图书阅读量为4.65本。

粗略计算,我国人均每年可以读17本书,平均每月1.5本。按照从18岁成年到77岁的人均寿命计算,人的一生可以读1020本书。

当当网上的图书数量是多少?

  • 经济类:614873 本

  • 管理类:1049148 本

  • 历史类:607259 本

  • 小说类:1564887 本

可见时间有限,现代文明的成果想尽情享用还是心有余而力不足,反而应该珍惜花费时间和精力去读的那1020本书。

在读书这件事上,选书才是最重要的

亚马逊和当当的图书排行榜、名人推荐的书单、豆瓣的书评等,都可以帮助我们先做好选书这关键的第一步。

本篇文章以当当网畅销书榜为例,侧重Web Scraper的入门,爬取的内容比较简单,先掌握完整的爬虫流程,能够顺利导出爬取的数据。复杂多变的内容爬取会在后面的教程中一一讲解。

 01   爬取的榜单和内容 

进入当当畅销书榜单,选择近30天的畅销书,默认展示前20本,我们就对这20本的「书名」进行采集。

榜单网址:

http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-recent30-0-0-1-1

 02   爬虫项目实战 

第一步,调出Web Scraper界面 

点击鼠标右键,找到「检查元素」点击进入,在选项卡上就可以找到「Web Scraper」了。

 第二步,创建名为「dangdang」的爬虫项目 

在Creater new sitemap下点击Creater sitemap,然后进行以下配置:

  • Sitemap name:dangdang

  • Start URL:填入文章上方的榜单网址

  • 点击Create Sitemap创建完成!

 第三步,配置爬取「书名」的选择器 

  • Id:选择器名称,这里填写「title」,表示要采集的是书的标题

  • Type:默认为Text,表示要采集的信息是文本格式

  • 点击Selector中的Select后,跳出一个条形对话框

  • 点选第1个书名,发现书名底色变红(表示被选中),然后点击第2个书名,此时发现后面的第3个、第4个……书名均变为红色

  • 点击条形对话框的Done selecting!

  • 勾选Multiple,表示除了点选的第1个和第2个书名外,本页后续底色变红的书名也都需要采集

  • 点击Save Selector,「书名」的选择器配置完成!

 第四步,执行爬虫程序 

  • 点击Sitemap dangdang下拉列表中的Scrape,开始执行程序

  • 出现的对话框中有两项数字内容,默认值均为2000Request interval:表示「网页请求发送间隔」,为了不被网站判定为机器进而阻止采集,需要模拟人的行为将动作放缓,通常按默认值即可Page load delay:表示「页面加载时长」,如果页面没有完全加载就开始采集,会造成信息采集不全,特别是在网速不佳的时候,通常也按默认值,也可适当调整

  • 点击Start scraping开始采集,弹出一个采集窗口,注意采集过程中不要关闭此窗口,待采集完成后,窗口会自动关闭

  • 窗口关闭后,点击refresh,出现3列数据
    「web-scraper-order」:程序自动编码,不用理会
    「web-scraper-start-url」:点击书名跳转的url,前面虽然只设置了采集书名的文本,但采集默认同时提供url,所以如果需要此项,不用再单独设置
    「title」:要采集的书名,注意,书名的顺序并非是网页上的顺序

 第五步,导出数据至CSV文件 

Web Scraper免费版只提供CSV一种导出形式,导出后用Excel打开即可。

  • 点击Sitemap dangdang下拉列表中的Export data as csv
  • 点击Download now!后出现了浏览器的下载对话框,打开或者保存即可

 03   Web Scraper界面功能介绍 下面,顺序介绍Web Scraper界面中的Sitemaps、Sitemap、Create new sitemapSitemaps:Sitemap项目列表,所有创建的Sitemap均可在此列表找到,比如上面创建的「dangdang」就在此列表中。Sitemap:直接点击此项,Web Scraper无任何反应,因为此项只针对某一个已经创建的Sitemap,所以,要从Sitemaps中选择一个ID点击,这里点击「dangdang」,发现中间的Sitemap变为了Sitemap dangdang,说明已经跳转到了指定的Sitemap内。点击Sitemap dangdang,下拉列表有如下几项:Selectors:选择器列表,每一个采集内容均要配置一个选择器,在上面的例子中,采集了书名,如果需要采集评论数、出版社等页面可见信息,要分别为这些信息逐一添加选择器Selector graph:选择器结构图,显示选择器之间的树状关系,再复杂的采集项目中能够一目了然地呈现采集逻辑Edit metadata:修改Sitemap设置,即Sitemap名称和urlScrape:执行采集程序Browse:浏览采集结果Export Sitemap:导出Sitemap代码,此代码可以直接导入,无需再次配置Export data as CSV:导出采集结果至csv文件点击Create new sitemap,发现有两种新建Sitemap的方法,直接创建(Create Sitemap)和导入(Import Sitemap)。当当的案例中已经讲过Create Sitemap,这里不再赘述。
点击Import Sitemap进入以下界面:Sitemap JSON:把Export Sitemap导出的代码粘贴在此处Rename Sitemap:为Sitemap命名
点击Import Sitemap后,同样成功创建了Sitemap 04   数据采集只是数据分析的过程 每一分钟,互联网上都会有海量的数据产生,数据的价值并非是它本身,而是通过分析数据能获得哪些有价值的信息。数据采集是一项不值得投入太多时间的工作(包括学习采集的时间和练习的时间),所以,只要学习了网页常见情况的处理方法就可以,没有必要为了学习采集而频繁练习。遇到新的问题时,再到网上寻求解答,这样会记得更牢。


爬虫爬出来的数据不全_Web Scraper教程(二)爬虫入门之当当畅销书爬取相关推荐

  1. 爬虫爬出来的数据不全_斥巨资学完Python数据分析后,给运营人总结7个小建议...

    曾经我们看不起满大街卖英语课的销售,现在朋友圈一个广告就屁颠屁颠报名学Python,堪称年度迷惑行为之一. 难得摊上一个风口浪尖的话题,亲身经历的我也算是抓到一个写作素材了. 去年十一月开始学数据分析 ...

  2. python爬虫工程师需要会什么软件_Python学习教程:爬虫工程师必备的10个爬虫工具!...

    Python学习教程:爬虫工程师必备的10个爬虫工具! 最近很多学爬虫的伙伴让推荐顺手的爬虫工具,南瓜花了点时间总结了一下,把这些好用的爬虫工具都跟你们找齐活了! 都知道工欲善其事必先利其器,那么作为 ...

  3. 网络爬虫模拟登陆获取数据并解析实战(二)

    本文为原创博客,仅供学习使用.未经本人允许禁止复制下来,上传到百度文库等平台. 目录 分析要获取的数据 程序的结构 构建封装数据的model 模拟登陆程序并解析数据 结果展示 分析要获取的数据 下面继 ...

  4. 网站有反爬机制就爬不了数据?那是你不会【反】反爬!道高一尺魔高一丈啊!

    不知道你们在用爬虫爬数据的时候是否有发现,越来越多的网站都有自己的反爬机制,抓取数据已经不像以前那么容易,目前常见的反爬机制主要有以下几种: 数据是通过动态加载的,比如微博,今日头条,b站 需要登录, ...

  5. Excel数据透视表经典教程二《创建数据透视表》

    一.创建数据透视表 由上图:Ctrl+A选中图表,然后点击插入-点击数据透视表 选择在新/现有工作表中创建数据透视表 1.对不同品牌下的不同车型进行计数 2.查看不同品牌的收入是多少 3.将不同的地区 ...

  6. Python爬虫经常爬不到数据,或许你可以看一下小编的这篇文章

    原标题:解决Python爬虫爬不到数据 前言: 近期,通过做了一些小的项目,觉得对于Python爬虫有了一定的了解,于是,就对于Python爬虫爬取数据做了一个小小的总结,希望大家喜欢! 文章目录 原 ...

  7. 爬虫爬取到的数据不全

    文章目录 前言 python代码 解决办法 前言 这是一个爬虫的学习笔记,在写一个图书网站的数据爬取时,遇到一个问题,response得到的数据不全,而在网页端用xpath插件看到的是全的,代码如下 ...

  8. 【微博爬虫教程实例】基于requests、mysql爬取大数据量博主关键字下博文及评论

    [关键词:手把手教程.反爬.数据库.python爬虫.微博关键词爬虫.较大数据量.数据简单过滤] 本教程适合微博相关爬虫需求者阅读,完整实例源码将放置在文末github链接中. 该实例针对微博的反爬措 ...

  9. python爬虫导入数据库_python爬虫爬下来的数据怎么导入到MySQL

    展开全部 下载mysql.connector库 然后把爬虫2113爬到的数据5261通过mysql里面的insert语句查到数4102据库,当然也可以建表1653,一般我没用python建表 是先建好 ...

  10. 爬虫爬到的网页源代码不是真正的源代码_Python爬虫经常爬不到数据?你可以看一下这篇文章...

    近期,通过做了一些小的项目,觉得对于Python爬虫有了一定的了解,于是,就对于Python爬虫爬取数据做了一个小小的总结,希望大家喜欢! 1.最简单的Python爬虫 最简单的Python爬虫莫过于 ...

最新文章

  1. JZOJ 3814. 【NOIP2014模拟9.7】天黑黑
  2. WCF和ASP.NET Web API在应用上的选择
  3. lfu算法实现c语言_分治算法解决最大子段和问题。c语言实现
  4. vue的基本项目结构
  5. 已知两点坐标如何快速增加其他坐标_「测绘精选」坐标转换概述
  6. java 画笔跟swing组件_「软帝学院」:2019思维最清晰的java学习路线
  7. 【Elasticsearch】十九种Elasticsearch字符串搜索方式终极介绍 各种 查询
  8. python语言发展历时_编程语言十年发展史
  9. 获取PowerShell某个对象的所有命令
  10. BS7799系列讲座:HTP模型图及构建(转载)
  11. AutoCAD中的Spline曲线算法分析(二)
  12. 如何判断 msn 是否在线 [根据msn是否在线动态显示 msn 头像]
  13. 无法打开包括文件math.h
  14. 李宏毅2022机器学习hw6
  15. 信号完整性分析学习--13--IBIS模型(2)
  16. 抗混叠滤波的Matlab解释
  17. 从0学起的esp-idf之旅——i2s总线理解与运用
  18. QPSK解调过程中的抽样判决
  19. 微软os snmp服务器,windows服务器snmp v3
  20. DNS_PROBE_POSSIBLE打不开网页怎么办?

热门文章

  1. SQLMAP参数中文详解(看过来)!
  2. 卫星影像,区划矢量,DEM....教你如何将各种遥感数据收入囊中
  3. 如何在python中输入复杂的数学公式_如何快速输入复杂的数学公式?这里有 3 个实用技巧...
  4. 仿微博视频边下边播之滑动 TableView 自动播放
  5. 操蛋 京东 配电脑 自助装机 严重问题
  6. 根据四个特征点求解相机位姿
  7. 鸿蒙判后而成翻译,我在洪荒一百四十六石猴出世(1/3)胜神州。东胜神洲,海外有一国土,名曰傲来-金羚文学...
  8. Redis 深度历险: 核心原理和应用实践
  9. java 批量生成条形码,打包zip(springboot)
  10. 微信公众号文章素材收集网站大盘点