博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何测试Ajax动态分页列表的最大可翻页数?
阅读量:6224 次
发布时间:2019-06-21

本文共 1032 字,大约阅读时间需要 3 分钟。

hot3.png

原文作者:

原文链接:

现在使用Ajax技术的网站越来越多,一个常见的应用就是动态分页:当列表页面滚动底部时,下一页的内容被动态加载(e.g. Facebook、Twitter、 Pinterest)。

和常规的分页方式相比,动态分页往往隐藏了数据总条数和页面总数,这样就增加了我们对采集成本和周期的评估的难度。

鲲鹏数据的技术人员给出了下面这段JS代码,可以帮助我们测试出列表的总页数。可以在Chrome的调试工具(F12)或者火狐的Firebug控制台内执行,效果是每隔1秒尝试将页面滚动到底部(触发加载新的内容),直至页面高度不再发生变化。

  1. var interval = 1000; // 间隔多少毫秒尝试滚动到底部一次  
  2. var page = 0; // 初始页码  
  3. var last_body_height = 0; // 上一次操作后页面的高度  
  4. function scroll_to_bottom() {   
  5.     scroll(0, document.getElementsByTagName('body')[0].scrollHeight);   
  6.     var current_body_height = document.getElementsByTagName('body')[0].scrollHeight; // 当前页面高度  
  7.     if(current_body_height != last_body_height){  
  8.         page += 1;  
  9.         console.log('Loaded page ' + page);  
  10.     }  
  11.     else{  
  12.         console.log('Page not changed, page ' + page);  
  13.     }  
  14.     last_body_height = document.getElementsByTagName('body')[0].scrollHeight; // 新的页面高度  
  15.     setTimeout('scroll_to_bottom()', interval);  
  16. }   
  17. scroll_to_bottom();  

下面是我们对雅虎问答的问题列表页的测试结果截图,可以看出最大可见页数大约是前100页。

雅虎问答列表页最大可见页数测试结果

特别说明:该文章为西安鲲之鹏的原创文章 ,你除了可以发表评论外,还可以转载到你的网站或博客,但是请保留源地址,谢谢!!(尊重他人劳动,你我共同努力)

转载于:https://my.oschina.net/webscraping/blog/511060

你可能感兴趣的文章
【芝士整理】CSS经典布局
查看>>
MySQL数据库设计规范
查看>>
探寻hashmap
查看>>
从入门到求职,成为数据科学家的终极指南
查看>>
Vue.js 图标选择组件实践详解
查看>>
【整理总结】负载均衡浅析
查看>>
HeaderViewListAdapter.isEnabled数组越界问题分析
查看>>
测试本地node包
查看>>
Windows平台下安装或卸载Apache服务
查看>>
开发第一个VUE插件
查看>>
解析世界杯超大规模直播场景下的码率控制
查看>>
聊聊BOM的那些事
查看>>
Xamarin 学习笔记 - Page(页面)
查看>>
JavaScript中的函数个人分享
查看>>
Promise A+ 中文翻译
查看>>
FPGA加速:面向数据中心和云服务的探索和实践
查看>>
利用Object.prototype.toString.call()来进行类型检验
查看>>
如何在Vue里建立长按指令
查看>>
vue分析之template模板解析AST
查看>>
26自学转行前端(写给和1年前一样迷茫的我的你)
查看>>