php结合phantomjs实现网页截屏、抓取js渲染的页面

添加时间:18-07-19 所属分类:PHP工具与代码
  https://blog.csdn.net/jiedao_liyk/artic ... s/78850684

首先PhantomJS快速入门
PhantomJS 是一个基于 WebKit 的服务器端 JavaScript API。它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。 PhantomJS 可以用于 页面自动化 , 网络监测 , 网页截屏 ,以及 无界面测试 等。

一、安装
安装包下载地址: http://phantomjs.org/download.html ,包括 Windows ,Mac OS,Linux版本,自行选择对应 版本下载解压即可( 为方便使用,可自已为phantomjs设置环境变量 ),其中带有一个example文件夹,里面有很多已经写好的代码供使用。本文假设phantomjs已经安装好并已设置了环境变量。

二、使用
Hello, World!
新建一个包含下面两行脚本的文本文件:

console.log('Hello, world!');
phantom.exit();
将文件另存为 hello.js ,然后执行它:

phantomjs hello.js
输出结果为:Hello, world!

第一行将会在终端打印出字符串,第二行 phantom.exit 将退出运行。
在该脚本中调用 phantom.exit 是非常重要的,否则 PhantomJS 将根本不会停止。

脚本参数 – Script Arguments
Phantomjs如何传递参数呢?如下所示 :

phantomjs examples/arguments.js foo bar baz
其中的foo, bar, baz就是要传递的参数,如何获取呢:

var system = require('system');
if (system.args.length === 1) {
console.log('Try to pass some args when invoking this script!');
} else {
system.args.forEach(function (arg, i) {
console.log(i + ': ' + arg);
});
}
phantom.exit();
它将输出 :

0: foo
1: bar
2: baz
页面加载 – Page Loading
通过创建一个网页对象,一个网页可以被加载,分析和渲染。
  • 2
  • 3
  • 4

前篇:上一篇文章不存在 后篇:济南首批5家企业获得网约车合法牌照
发表我的评论


推荐文章   潺潺复泠泠 处处是泉声   这些学校的微博火了:每天公示学生伙食...   “我今年27,现在慌得一比”   环卫女工落户上海18年清扫一条路,曾以...   在擅长的领域做到极致,是普通人为数不...
随机文章   php统计目录文件大小的函数   php递归统计目录下指定扩展名文件个数   PHP curl实现多进程并发高效率采集爬虫   关于PHPCMS登录后台被电信宽带劫持的解...   Discuz源码分析与插件开发实例进阶
广告

其他推荐

因为本站所有内容均转载自其它媒体,本意为公众提供免费服务,但并不代表本网赞同其观点,也不能对其真实性验证负责,如稿件版权单位或个人不想在本网发布,请与我联系,本人会立即将其撤除,谢谢.联系方式:atseashawk@163.com QQ:99289555