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    
}

  

转载于:https://www.cnblogs.com/c-x-a/p/6365882.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值