phantomjs 下拉滚动条获取网页的全部源码

//codes.js
var system = require(‘system‘);
var fs = require("fs");
//console.log(‘Loading a web page‘);
var page = require(‘webpage‘).create();
var url = "https://m.rong360.com/shenyang/search?loan_limit=3.0&application_type=9&loan_term=12&rf_page_name=homepage&fr=btn";
console.log(url);
     page.settings = {
   userAgent: ‘Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36‘,
  	  javascriptEnabled: true,
      loadImages: true
};
 console.log("begin");

page.viewportSize = {width:1000,height:2000};
  console.log("--------------------1------------------------------");
page.open(url, function (status) {
    //Page is loaded!
           if (status != "success") {
            console.log("visit web eror");
        }
        else {
          console.log("--------------------2------------------------------");
    waitFor();
// window.setTimeout(function () {
//                  page.render(‘1.png‘);
//                console.log("---------------------FS MOVE------------------------------");
//           phantom.outputEncoding="utf8";
//                fs.write(‘1.html‘, page.content, ‘w‘);
//               phantom.exit();
//            },30000);
        }
});   

function markCapture()
{
var ishaveA=page.evaluate(function () {
	var flag=false;
	var acount=document.getElementsByClassName("ui-product-item").length;
	var source=document.body.innerHTML;

if(acount!=0&&document.getElementsByClassName("no-more").length==0)
{
	document.getElementsByClassName("ui-product-item")[acount-1].scrollIntoView();
}
else
{
flag=true;
}

	return flag;
  });
return ishaveA;
}

 function waitFor() {
  interval = setInterval(function() {
  	 var flag= markCapture();
  	 console.log("flag:"+flag);
  	   if(flag){
        	console.log("flag is:"+flag);
        	  page.render(‘1.png‘);
                console.log("---------------------FS MOVE------------------------------");
           phantom.outputEncoding="utf8";
                fs.write(‘1.html‘, page.content, ‘w‘);
        clearInterval(interval);
       phantom.exit();
 }
 }, 5000); //< repeat  5000ms
}

  

时间: 2024-12-28 21:32:52

phantomjs 下拉滚动条获取网页的全部源码的相关文章

Powerbuilder编程技巧 如何获取网页的HTML源码

直接使用的三种方式 1.  PB内部对象 Inet object 2.  API 函数 3.  Ole中的Microsfot Web 游览器对象 一.Inet object: 1.Inet object        The Inet object provides the ability to display a Web page in the default browser, access the HTML for a specified page, and send data to a C

selenium操作下拉滚动条的几种方法

数据采集中,经常遇到动态加载的数据,我们经常使用selenium模拟浏览器操作,需要多次下拉刷新页面才能采集到所有的数据,就此总结了几种selenium操作下拉滚动条的几种方法 我这里演示的是Java版本的,使用chromedriver,当然你可以换成python或其他语言,浏览器用firefox或者phantomjs(无头浏览器),大部分都是适用的,不同浏览器有略微的差异. 初始化一个浏览器 首先要允许浏览器运行js脚本 DesiredCapabilities sCaps = new Desi

路由机构 -- 下拉框获取当前所属部门

//下拉框获取当前所属部门 function initRespOrg(){   $.ajax({           type: "POST",            url: "/tms/actions/tms_net_org/localOrg.do?actionId=tms_net_org_localOrg",            dataType:"json",            data :"",       

DIV+CSS+JS仿Select下拉表单网页特效源代码下载

DIV+CSS+JS仿Select下拉表单 原文:DIV+CSS+JS仿Select下拉表单网页特效源代码下载 源代码下载地址:http://www.zuidaima.com/share/1550463331830784.htm <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <

用JS让下拉框改变网页背景颜色

<HTML> <HEAD> <TITLE>石家庄渣浆泵配件</TITLE> </HEAD> <SCRIPT> <!-- function bgChange(selObj) { newColor = selObj.options[selObj.selectedIndex].text; document.bgColor = newColor; selObj.selectedIndex = -1; } //--> </SC

Python3.x:selenium遍历select下拉框获取value值

Python3.x:selenium遍历select下拉框获取value值 Select提供了三种选择方法: # 通过选项的顺序,第一个为 0 select_by_index(index) # 通过value属性 select_by_value(value) # 通过选项可见文本 select_by_visible_text(text) Select提供了四种方法取消选择: deselect_by_index(index) deselect_by_value(value) deselect_by

Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源码)

使用意图筛选器 点击下载源码 1.创建一个Intents项目,给该项目添加一个新类,命名为MyBrowserActivity,在res/layout文件夹下新增一个browser.xml: 2.在AndroidManifest.xml文件中添加如下代码: 添加权限: <uses-permission android:name="android.permission.CALL_PHONE" /> <uses-permission android:name="a

jenkins获取git上的源码

jenkins获取git上的源码会遇到三种情况,我们在这里会分别介绍一下: 一.获取git上public(公有)的项目 只需配置仓库的URL即可 jenkins下使用git获取源码的配置方法 二.获取git上的private(私有)项目 2.1 使用用户名密码 仓库的URL使用http协议 2.2 使用密钥 仓库的URL使用 ssh协议的,以git开头 原文地址: http://www.xuebuyuan.com/2042085.html

只需两步快速获取微信小程序源码

只需两步快速获取微信小程序源码 第一次在掘金这样高大上的社区写文章,忐忑地敲下我获取小程序源码过程中的经验分享. 最近在学习微信小程序开发,半个月学习下来,很想实战一下踩踩坑,于是就仿写了某个小程序的前端实现,过程一言难尽,差不多两周时间过去了,发现小程序的坑远比想象的要多的多!!在实际练手中,完全是黑盒的,纯靠推测,部分效果在各种尝试后能能做出大致的实现,但是有些细节,实在不知道如何去实现.这种时候,真的很想一窥源码,查看究竟,看看大厂的前端大神们是如何规避了小程序的一些比较奇葩的坑. 于是就