Java数据采集-4.分析常见的翻页(加载数据)方式
来源:互联网 发布:网站源码小偷怎么用 编辑:程序博客网 时间:2024/05/17 08:40
本篇文章主要分析当下常见的几种翻页(加载数据)的方式,并结合实际例子和截图介绍。在后续博客中针对这些网站,写代码完成数据抓取。
1. 根据页码进行翻页
如CSDN的个人博客列表,我们可以轻松的分析出总页数和列表页地址。
共两页,列表页地址为:http://blog.csdn.net/TMaskBoy/article/list/2
对于此类型的网页,我们只需要根据总页数,遍历所有的列表页即可,对于一些数据量极大,页数有最大值限制时,需要根据分类或者检索条件解决。
2. 根据下拉网页进行加载数据
上一篇博客写的开源中国新闻列表,其加载数据方式即为下拉刷新。
此类型的网页我们可以打开浏览器的开发者工具,点击网络(Network),首先清空原有的请求,拖动网页的滚动条到底部,可看到网页新发出的Url请求,一般都会有页数等相关参数。
注意:加载数据请求一般均为Post类型
返回数据样例:
此处我们可以看出,返回的数据和上一篇博客循环解析的节点一致。
此种翻页我们需要不断的递增翻页请求中的当前页码参数,对于有些网页,在请求到一定页之后会不在返回数据,一般需要根据分类或查询条件等不断精确范围,保证抓取到更多的数据。
3. Ajax无刷新请求
Iconfont 阿里巴巴矢量图库的翻页即为Ajax无刷新请求,此类型翻页请求类型一般为Post,参数包括查询参数,当前页数,每页条目数等等,返回数据为Json。
http://www.iconfont.cn/search/index?q=java&page=2
下图为请求参数:
下图为请求地址和请求方式,返回值类型:
下图为数据样例:
此类型的翻页不需要进行html的解析,但需要对返回的Json数据做解析,可使用FastJson等工具将Json数据转化为Map字典或者对应的实体对象,进而获取各个键或者属性,达到获取数据的目的。翻页请求和上述相同。
接下来的博客针对上述三种加载数据的方式编写实际的代码抓取数据。
- Java数据采集-4.分析常见的翻页(加载数据)方式
- Java数据采集-7.Ajax无刷新请求(翻页-3)
- Java数据采集-5.获取CSDN个人博客列表(翻页-1)
- Java数据采集-6.获取开源中国新闻列表(翻页-2)
- 常见数控机床的数据采集方法比较
- 国内6大常见免费数据采集器特点分析
- java常见数据集合分析
- 数据分析之数据采集
- 常见的数据寻址方式
- python实战(1):简单的数据采集与分析
- 六款大数据采集平台的架构分析
- 六款大数据采集平台的架构分析
- 大数据采集平台的架构分析
- 六款大数据采集平台的架构分析
- ftp数据采集的代码(一次性数据采集)
- java--数据采集系统
- java 采集新闻数据
- java 数据采集
- Springboot集成Mybatis之注解篇
- 数学建模_谢金星_初等模型
- MySQL事务的特性
- 获取jqGrid中选择的行的数据
- RabbitMQ入门
- Java数据采集-4.分析常见的翻页(加载数据)方式
- Lowest Common Ancestor 最近公共祖先 过了初 中级测试,附:国外大神满分简洁代码
- B
- 从零搭建Hadoop集群 四
- 选择排序算法
- Servlet文件上传和下载
- A. Mister B and Book Reading
- 解决android opengl es绘制物体屏幕横竖屏切换物体压扁形变以及矩阵相关知识
- 《算法》-3.3平衡查找树(2)