【从零开始学爬虫】采集当当网图书商品信息
l 采集网站
【场景描述】采集当当网计算机类中的图书信息。
【源网站介绍】当当(www.dangdang.com)是全球知名的综合性网上购物商城,由国内著名出版机构科文公司、美国老虎基金、美国 IDG 集团、卢森堡剑桥集团、亚洲创业投资基金(原名软银中国创业基金)共同投资成立,于美国时间 2010 年 12 月 8 日在纽约证券交易所正式挂牌上市,成为中国第一家完全基于线上业务、在美国上市的 B2C 网上商城。
【使用工具】前嗅 ForeSpider 数据采集系统,点击下方链接可免费下载
http://www.forenose.com/view/forespider/view/download.html
【入口网址】
http://category.dangdang.com/cp01.54.00.00.00.00.html
【采集内容】
采集当当网中的计算机类中的图书信息,包括所属一级分类、二级分类、书名、简介、作者、出版社、出版时间、价格、编辑推荐、内容简介、作者简介、目录、页面网址等。
【采集效果】如下图所示:
l 思路分析
配置思路概览:
l 配置步骤
1. 新建采集任务
选择【采集配置】,点击任务列表右上方【+】号可新建采集任务,将采集入口地址填写在【采集地址】框中,【任务名称】自定义即可,点击下一步。
选择列表链接,点击完成按钮,即创建任务完成。
2.获取分类链接
①采集预览,查看页面所有链接,查找计算机分类链接的规律,发现所有与计算机相关的分类的链接规律为:http://category.dangdang.com/cp01.54.+数字串+.00.00.00.html
②所以使用地址过滤的方法,过滤链接为以下规律的链接:http://category.dangdang.com/cp01.54.\d.00.00.00.html
其中\d 表示数字串,点击保存,重新测试,计算机分类链接就筛选出来了。
3. 抽取图书商品链接
①新建一层模板 02,并新建两个链接抽取,第一个链接抽取抽取商品页链接,第二个抽取翻页链接。
可分别修改名称为:列表链接抽取和翻页链接抽取。
②选择任意一条分类链接,并粘贴到模板 02 的示例地址处,点击右上角保存按钮。
③双击内置浏览器空白处,内置浏览器显示该页面。
④采集预览,双击任意一条分类链接,进入图书商品列表页,查看页面链接,观察图书链接规律,发现图书商品链接规律为:
http://product.dangdang.com/+数字串+.html
⑤设置地址过滤,过滤规律为http://product.dangdang.com/\d.html\e 的链接,其中\d 表示数字串,\e 表示链接结束。采集预览,图书商品链接已抽取到。
4.抽取翻页链接
采集预览,双击任意一条分类链接进入分类页,观察翻页链接,发现翻页链接中都含有:http://category.dangdang.com/pg,使用地址过滤方法,过滤地址中含有:http://category.dangdang.com/pg的链接。采集预览如下图所示:
5.抽取图书商品数据
①新建一个抽取模板,在其下新建一个数据抽取,具体操作如下所示:
②数据建表,按照下图所示建数据表。(注意字段属性等应严格按照下图进行设置)
③将新建好的数据表,关联到模板中去,如下图所示:
④填写示例数据,采集预览,复制任意一条图书商品链接。
将链接粘贴到本模板示例地址中,并双击内置浏览器空白部分,加载本链接。
⑤关联模板
模板 02 中的列表链接抽取,关联模板 03,这样采集到的图书商品链接会到模板 03 进行数据抽取。
模板 02 中的翻页链接抽取,关联模板 02,这样采集到的翻页链接会继续在模板 02 中进行列表链接抽取。
⑥数据抽取-可视化抽取部分字段
Class1&class2 使用字段定位取值的方法,进行取值,具体操作如下所示:
Title 取值同上
Introduct、Autho、publish、pubtime、price 取值同上
⑦数据抽取—脚本抽取部分字段
Recommend 后边的字段对应的数据不在页面源码中,所以用定位取值取不到。
接下来我们用浏览器打开该示例地址,查看 recommend 等字段对应的数据在哪个请求中。
点击 F12,查看每个请求中返回的内容,发现 recommend 等内容在下图所示请求中。
发现该请求的链接是:
观察发现其规律为:
查看请求中的返回内容,发现文本内容都被 Unicode 转译。
使用在线转码工具能够转译为中文。
在源码中,发现 id 为【abstract-all】的内容是编辑推荐(recommend 字段)。
同理,id 为【content-all】的内容是内容简介(content 字段);
id 为【catalog-show-al】的内容是目录内容(booklist 字段);
故在 recommend 字段创建脚本教程如下所示:
脚本文本如下所示:
⑦采集预览,双击进入下一层,知道打开数据页,抽取到数据,表示配置成功。
l 采集步骤
模板配置完成,采集预览没有问题后,可以进行数据采集。
①首先要建立采集数据表:
选择【数据建表】,点击【表单列表】中该模板的表单,在【关联数据表】中选择【创建】,表名称自定义,这里命名为【dangdang】(注意命名不能用数字和特殊符号),点击【确定】。创建完成,勾选数据表,并点击右上角保存按钮。
②选择【数据采集】,勾选任务名称,点击【开始采集】,则正式开始采集。
③采集结束后,可以在【数据浏览】中,选择数据表查看采集数据,并可以导出数据。
④导出的文件打开如下图所示:
温馨提示:采集过程中可能会遇到封 ip 的情况,如果您配置好后没有采集到数据,可购买适量代理 ip 进行采集。
l 前嗅简介
前嗅大数据,国内领先的研发型大数据专家,多年来致力于大数据技术的研究与开发,自主研发了一整套从数据采集、分析、处理、管理到应用、营销的大数据产品。前嗅致力于打造国内第一家深度大数据平台!
评论