前两天采集时,遇到一个网站没有翻页按钮,也没有 "下一页" 的链接,页面上的内容只能滑到底部才会自动加载新的,就似刷微博、小红书的瀑布流网页。
普通的网页采集工具是按页码翻页来采集的,一页一页往下抓,遇到这种滚动加载的页面,直接就无效了。
简数采集器有个Ajax动态加载功能可以专门处理这种情况,它能模拟人滚动页面的操作,触发新的内容加载,然后把这些内容全部采集下来。
操作非常简单,按照以下步骤操作即可:
第一步:创建采集任务
点左上角的 "创建采集任务" ,输入一个任务名,再把要采集的列表页网址填进去。

第二步:列表页采集配置
列表提取器的作用是把要采集的那些详情页链接提取出来。
系统默认会用智能算法自动识别,如果你想自己调整,在可视化界面上用鼠标点就行:点选两个不同的目标链接,系统会自动识别出其他相似的链接。

第三步:滚动加载配置(关键)
在列表提取器里,点 "动态" ,勾上 "启用Ajax动态加载" ,选择 "滚动页面" 。
"滚动到的位置" 是指模拟滚动的距离,默认是1000像素。如果你要采集的页面比较长,可以把这个数值调大。
滚动次数的设置,建议不要超过5次,一般来说3到5次就能把近期更新的数据都抓到了。

Ajax动态加载有三种模式可供使用,顺便都简要说一下:
第一种是 "仅等待" :适用于列表提取器预览窗口里看不到数据的情况,比如说页面一直显示加载中,或者一片空白,但是在浏览器里打开是正常的。这时候开一下这个功能就行。
第二种是 "点击加载更多":适用于那些通过点击 "加载更多" 按钮来加载新内容的网页,没有数字分页也没有下一页链接。
第三种就是 "滚动页面" :适用于瀑布流页面。
第四步:详情页采集配置
继续下一步,系统会自动智能提取详情页里面的内容,如标题、作者、日期、正文、标签这些东西。你也可以在可视化界面上自行调整,如加一些字段或者删掉不需要的。

第五步:启动运行采集
采集完的数据,在任务里的「结果数据&导出发送」里可以查看和导出发布。
简数支持的CMS还挺全的:WordPress、织梦DEDE、Discuz、Zblog、Typecho、帝国ECMS、迅睿CMS等这些都有。

这个功能解决了一个很实际的问题。那些瀑布流页面和无限滚动的列表,以前确实不好处理,现在使用Ajax动态加载就能轻松搞定了。