python爬虫中PhantomJS加载页面的实例方法

PhantomJS作为常用获取页面的工具之一,我们已经讲过页面测试、代码评估和捕获屏幕这几种使用的方式。当然最厉害的还是网页方面的捕捉,这里就不再讲述了。今天我们要讲的是它加载页面的新方法,这个可能很多人不知道。其实经常会用到,感兴趣的小伙伴一起进入今天的学习之中吧~

可以利用 phantom 来实现页面的加载,下面的例子实现了页面的加载并将页面保存为一张图片。


var page = require('webpage').create();page.open('http://cuiqingcai.com', function (status) {    console.log("Status: " + status);    if (status === "success") {        page.render('example.png');    }    phantom.exit();});

首先创建了一个 webpage 对象,然后加载本站点主页,判断响应状态,如果成功,那么保存截图为 example.png 以上代码命名为 pageload.js,命令行

phantomjs pageload.js

发现执行成功,然后目录下多了一张图片,example.png

因为这个 render 方法,phantom 经常会用到网页截图的功能。

到此这篇关于python爬虫中PhantomJS加载页面的实例方法的文章就介绍到这了,更多相关python爬虫中PhantomJS如何加载页面内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容

    1.引言 在Python网络爬虫内容提取器一文我们详细讲解了核心部件:可插拔的内容提取器类gsExtractor.本文记录了确定gsExtractor的技术路线过程中所做的编程实验.这是第二部分,第一部分实验了用xslt方式一次性提取静态网页内容并转换成xml格式.留下了一个问题:javascript管理的动态内容怎样提取?那么本文就回答这个问题. 2.提取动态内容的技术部件 在上一篇python使用xslt提取网页数据中,要提取的内容是直接从网页的source code里拿到的.但是一些Aja

  • Python爬虫图片懒加载技术 selenium和PhantomJS解析

    一.什么是图片懒加载? - 案例分析:抓取站长素材http://sc.chinaz.com/中的图片数据 #!/usr/bin/env python # -*- coding:utf-8 -*- import requests from lxml import etree if __name__ == "__main__": url = 'http://sc.chinaz.com/tupian/gudianmeinvtupian.html' headers = { 'User-Agen

  • python爬虫selenium和phantomJs使用方法解析

    1.selenum:三方库.可以实现让浏览器完成自动化的操作. 2.环境搭建 2.1 安装: pip install selenium 2.2 获取浏览器的驱动程序 下载地址: http://chromedriver.storage.googleapis.com/index.html http://npm.taobao.org/mirrors/chromedriver/ 浏览器版本和驱动版本的对应关系表: chromedriver版本 支持的Chrome版本 v2.46 v71-73 v2.45

  • python爬虫中PhantomJS加载页面的实例方法

    PhantomJS作为常用获取页面的工具之一,我们已经讲过页面测试.代码评估和捕获屏幕这几种使用的方式.当然最厉害的还是网页方面的捕捉,这里就不再讲述了.今天我们要讲的是它加载页面的新方法,这个可能很多人不知道.其实经常会用到,感兴趣的小伙伴一起进入今天的学习之中吧~ 可以利用 phantom 来实现页面的加载,下面的例子实现了页面的加载并将页面保存为一张图片. var page = require('webpage').create();page.open('http://cuiqingcai

  • Python实现爬取网页中动态加载的数据

    在使用python爬虫技术采集数据信息时,经常会遇到在返回的网页信息中,无法抓取动态加载的可用数据.例如,获取某网页中,商品价格时就会出现此类现象.如下图所示.本文将实现爬取网页中类似的动态加载的数据. 1. 那么什么是动态加载的数据? 我们通过requests模块进行数据爬取无法每次都是可见即可得,有些数据是通过非浏览器地址栏中的url请求得到的.而是通过其他请求请求到的数据,那么这些通过其他请求请求到的数据就是动态加载的数据.(猜测有可能是js代码当咱们访问此页面时就会发送得get请求,到其

  • IE8中jQuery.load()加载页面不显示的原因

    一.jQuery.load() jQuery.load(url,[data],[callback])通过Ajax异步请求加载服务器中的数据,并把数据放到指定元素中. •url :请求服务器的地址 •data :可选项,请求时发送的数据 •callback :可选项,请求成功后的回调函数 例: $(".content").load(" https://www.imooc.com/data/fruit_part.html ") 二.IE8中使用jQuery.load()

  • AngularJS中重新加载当前路由页面的方法

    这个问题同样困扰我很久,网上的回答五花八门,全都不能解决:终于在网上找很久,看到某大神的解决办法,整理作此分享:使用ui-router重新加载当前页面的问题.(ui-router版本需要是0.2.14以上的) 用angular做项目,会碰到需要点击菜单刷新当前页面,加载当前页面,但是同一个路由页面点击没反应: 假设我们的路由页面 app.toMenu ; <a href="#" rel="external nofollow" rel="externa

  • JS如何实现在弹出窗口中加载页面

    弹出窗口,加载页面.弹出窗口初始位置为居中.可在关闭窗口时,回调主页面按钮.要求jquery. 效果演示 首先,演示主窗口两个按钮作用.然后,演示关闭弹出窗口时,调用主窗口的两个按钮. 主要代码(时间仓促,没加注释,不过代码很简单,就是创建几个元素拼在一起,每个元素都用var=标明了) var _divMask; var _divBox; function ShowMask() { var divMask = $('<div></div>') .attr("id"

  • AngularJS使用ng-inlude指令加载页面失败的原因与解决方法

    本文实例讲述了AngularJS使用ng-inlude指令加载页面失败的原因与解决方法.分享给大家供大家参考,具体如下: AngularJS中提供的ng-include指令,很类似于JSP中的<jsp:include>用来将多个子页面合并到同一个父页面中,避免父页面过大,可读性差,不好维护. 父页面parent.html代码如下: <html> <head> <script src="angular-1.2.2/angular.js">&

  • 用js实现计算加载页面所用的时间

    客户端代码写法: 在页面Head部分加入初始时间 复制代码 代码如下: <script language=javascript> var t1 = new Date().getTime(); </script> 在Body中加入 复制代码 代码如下: <SCRIPT LANGUAGE="JavaScript"> window.onload = function() { document.getElementById("TimeShow&qu

  • 几个优化WordPress中JavaScript加载体验的插件介绍

    WordPress 本身以及主题和插件通常需要加载一些 JavaScript 来实现某些特殊功能.为了最大限度地保证兼容性,不至于出现 JavaScript 失效的情况,所以一般在页头加载 JavaScript 文件.但是根据 Yahoo 开发者论坛的建议,加载 JavaScript 应该尽量在页尾以提高页面的显示(响应.渲染)速度.本文根据作者的使用经验介绍几个相关插件,并说明如何在某些特殊页面仍然在页头加载 JavaScript. 下面先简单介绍几个相关的优化 JavaScript 的 Wo

  • Android中WebView加载网页设置进度条

    本文实例为大家分享了Android中WebView加载网页设置进度条的具体代码,供大家参考,具体内容如下 效果: xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" a

随机推荐