最近在研究采集的过程中,发现了很多网站的列表页是动态加载的,自用的采集器完全无法获取要采集的文章链接,这就导致无法采集。
按我个人的理解,碰到动态加载的页面有两种方式解决:一是让网页在本地渲染完,直接对渲染完的页面获取采集文章的URL列表,鼓捣了半天,不行放弃了;第二是分析请求的地址看能不能找到规律。
首先在要采集的列表页打开开发者功能的面板,进到Network的Tab。
在列表页点击如第一张图所示的【加载更多】,在Network中立马就抓到了请求的地址。
双击打开后,进入了一个新的列表页,有20篇文章。
但是我发现,这个列表页不包含初始的文章,大概看了下整个链接的构造:
https://www.niaogebiji.com/pc/index/getMoreArticle/?catid=103&timepoint=1554966723&viewnum=3163&format=html
##有四个参数:catid、timepoint、viewnum、format。
其中?是查询符,告诉服务器要查询的catid是文章的分类,format是格式化成html,这两个参数非常重要保留,timepoint和viewnum貌似不重要,那么就构成了:https://www.niaogebiji.com/pc/index/getMoreArticle/?catid=103&format=html
打开新的链接,就是最新的20篇文章了,至于之后的文章怎么获取,应该是由viewnum来控制。我尝试获取了之后加载的viewnum的值分别是3163、4022、3477,并且尝试了其他的数值,但是没有发现什么规律,毕竟最新的20篇基本上可以满足需求,至此获取动态加载页面的链接OK了,采集成功。
本文作者:𝙕𝙆𝘾𝙊𝙄
文章名称:以鸟哥笔记为例,没有分页号的动态加载列表页怎么采集?
文章链接:https://www.zkcoi.com/365up/program/236.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。