前嗅教你大数据:采集孔夫子旧书网

2024-06-02 01:18

本文主要是介绍前嗅教你大数据:采集孔夫子旧书网,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

l 采集网站

【场景描述】采集孔夫子旧书网数据。

【源网站介绍】孔夫子旧书网是国内专业的古旧书交易平台,汇集全国各地13000家网上书店,50000家书摊,展示多达9000万种书籍;大量极具收藏价值的古旧珍本(明清、民国古籍善本,珍品期刊,名人墨迹,民国珍本,绝版书等)在孔网展示与交易,吸引了大量的学者、研究人员和藏书人长时间在线关注并参与。

【使用工具】前嗅ForeSpider数据采集系统,免费下载:

ForeSpider免费版本下载地址

【入口网址】https://book.kongfz.com/Cxianzhuang/cat_8002/

【采集内容】

采集孔夫子旧书网中书籍的标题、作者、价格、介绍详情等基本信息。

图片

【采集效果】

如下图所示:

图片

思路分析

配置思路概览:

图片

 l 配置步骤

1. 新建采集任务

选择【采集配置】,点击任务列表右上方【+】号可新建采集任务,将采集入口地址填写在【采集地址】框中,【任务名称】自定义即可,点击下一步。

图片

2.获取翻页链接

抽取翻页链接方法有三种,具体如下所示:

①智能过滤法:

打开前几个翻页链接,观察链接规律,

第二页:文学_线装古籍_孔夫子旧书网

第三页:文学_线装古籍_孔夫子旧书网

第四页:文学_线装古籍_孔夫子旧书网

根据规律输入过滤规则:https://book.kongfz.com/Cxianzhuang/cat_\dw\d/

(其中\d表示数字串)

图片

配置后,点击采集预览,发现翻页链接已经都采集到了。

图片

②方法二:定位取值法按住ctrl+鼠标单击任意一个翻页,然后按住shift+鼠标单击任意一个未选中翻页扩大选区,直至选中所有翻页,然后确认选区后保存。

图片

采集预览,发现所有翻页都被抽取出来了。

图片

③方法三:地址/标题过滤

类似智能过滤,先观察翻页链接规律(步骤可参考方法一),找到规律后,使用地址过滤的方法进行过滤保存,如下图所示:

图片

④关联模板,将翻页链接抽取,关联模板01。

图片

3.抽取列表链接

①新建一个链接抽取,改名为【列表链接】,将翻页链接抽取改名为【翻页链接】。

图片

②使用链接过滤的方法来获取列表链接,先采集预览,打开列表链接预览结果,发现图书的链接规律为:

https://book.kongfz.com/数字串/数字串/

所以设置地址过滤,过滤出包含该规律的链接,如下图所示,其中\d表示数字串。

③采集预览查看是否抽取成功。

图片

4.抽取数据

①新建一个抽取模板,在其下新建一个数据抽取,具体操作如下所示:

图片

②数据建表,按照下图所示建数据表。(注意字段属性等应严格按照下图进行设置)

图片

③将新建好的数据表,关联到模板中去,如下图所示:

图片

④填写示例数据,采集预览,复制任意一条新闻链接。

图片

⑤将链接粘贴到本模板示例地址中,并双击内置浏览器空白部分,加载本链接。

图片

⑥关联模板

图片

⑦数据取值

使用定位取值的方法,title字段如下所示:

图片

author字段如下所示:

图片

其他字段也按照同样的方法进行定位取值。

⑧采集预览

图片

采集步骤

模板配置完成,采集预览没有问题后,可以进行数据采集。

1.建立数据表单

选择【数据建表】,点击【表单列表】中该模板的表单,在【关联数据表】中选择【创建】,表名称自定义,这里命名为【kongfuzi】(注意命名不能用数字和特殊符号),点击【确定】。创建完成,勾选数据表,并点击右上角保存按钮。

图片

2.开始采集

选择【数据采集】,勾选任务名称,点击【开始采集】,则正式开始采集。

图片

3.导出数据

采集结束后,可以在【数据浏览】中,选择数据表查看采集数据,并可以导出数据。

图片

图片

4.导出的文件打开如下图所示:

图片

本教程仅供教学使用,严禁用于商业用途!

l 前嗅简介

前嗅大数据,国内领先的研发型大数据专家,多年来致力于为大数据技术的研究与开发,自主研发了一整套从数据采集、分析、处理、管理到应用、营销的大数据产品。前嗅致力于打造国内第一家深度大数据平台!

这篇关于前嗅教你大数据:采集孔夫子旧书网的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1022640

相关文章

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

pandas数据的合并concat()和merge()方式

《pandas数据的合并concat()和merge()方式》Pandas中concat沿轴合并数据框(行或列),merge基于键连接(内/外/左/右),concat用于纵向或横向拼接,merge用于... 目录concat() 轴向连接合并(1) join='outer',axis=0(2)join='o

批量导入txt数据到的redis过程

《批量导入txt数据到的redis过程》用户通过将Redis命令逐行写入txt文件,利用管道模式运行客户端,成功执行批量删除以Product*匹配的Key操作,提高了数据清理效率... 目录批量导入txt数据到Redisjs把redis命令按一条 一行写到txt中管道命令运行redis客户端成功了批量删除k

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +

java如何实现高并发场景下三级缓存的数据一致性

《java如何实现高并发场景下三级缓存的数据一致性》这篇文章主要为大家详细介绍了java如何实现高并发场景下三级缓存的数据一致性,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 下面代码是一个使用Java和Redisson实现的三级缓存服务,主要功能包括:1.缓存结构:本地缓存:使

在MySQL中实现冷热数据分离的方法及使用场景底层原理解析

《在MySQL中实现冷热数据分离的方法及使用场景底层原理解析》MySQL冷热数据分离通过分表/分区策略、数据归档和索引优化,将频繁访问的热数据与冷数据分开存储,提升查询效率并降低存储成本,适用于高并发... 目录实现冷热数据分离1. 分表策略2. 使用分区表3. 数据归档与迁移在mysql中实现冷热数据分

C#解析JSON数据全攻略指南

《C#解析JSON数据全攻略指南》这篇文章主要为大家详细介绍了使用C#解析JSON数据全攻略指南,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、为什么jsON是C#开发必修课?二、四步搞定网络JSON数据1. 获取数据 - HttpClient最佳实践2. 动态解析 - 快速

MyBatis-Plus通用中等、大量数据分批查询和处理方法

《MyBatis-Plus通用中等、大量数据分批查询和处理方法》文章介绍MyBatis-Plus分页查询处理,通过函数式接口与Lambda表达式实现通用逻辑,方法抽象但功能强大,建议扩展分批处理及流式... 目录函数式接口获取分页数据接口数据处理接口通用逻辑工具类使用方法简单查询自定义查询方法总结函数式接口