文档章节

小白记录:2、PhantomJS的安装及简单用法

苏灿
 苏灿
发布于 2017/08/29 18:37
字数 402
阅读 38
收藏 0

phantomjs实现了一个无界面的webkit浏览器。虽然没有界面,但dom渲染、js运行、网络访问、canvas/svg绘制等功能都很完备,在页面抓取、页面输出、自动化测试等方面有广泛的应用。

安装

官方下载地址 下载官方文件,下载后解压至任意目录下,

在bin的文件夹内找到

复制路径(例如我的路径是:D:\phantomjs-2.1.1-windows\bin)添加至系统变量及环境变量

打开命令行

输入

phantomjs -v

如果安装成功则会显示phantomjs的版本号

Microsoft Windows [版本 10.0.15063]
(c) 2017 Microsoft Corporation。保留所有权利。

C:\WINDOWS\system32>phantomjs -v
2.1.1

如果失败检查上面几步是否有错误。

开始练习

第一个helloworld程序:

在任意位置新建txt文件输入

console.log('Hello, world!');

phantom.exit();

注意:第一行为了输出了 Hello,world!程序第二句话终止了 phantom 的执行。如果没有这句话的话程序将一直运行。

将文件名字改写为 helloworld.js

在文件所在位置 shift+右键 选择在此处打开命令行窗口。

或者通过命令行切换目录的方法进入目标文件夹。例:

Microsoft Windows [版本 10.0.15063]
(c) 2017 Microsoft Corporation。保留所有权利。

C:\Users\苏灿>D:

D:\>cd phantomjs-2.1.1-windows\bin

D:\phantomjs-2.1.1-windows\bin>

随后运行

phantomjs helloworld.js

运行成果

Microsoft Windows [版本 10.0.15063]
(c) 2017 Microsoft Corporation。保留所有权利。

C:\Users\苏灿>D:

D:\>cd phantomjs-2.1.1-windows\bin

D:\phantomjs-2.1.1-windows\bin>phantomjs helloworld.js
Hello, world!

D:\phantomjs-2.1.1-windows\bin>

 

 

© 著作权归作者所有

苏灿
粉丝 0
博文 5
码字总数 2528
作品 0
私信 提问
php使用QueryList轻松采集JavaScript动态渲染页面

QueryList使用jQuery的方式来做采集,拥有丰富的插件。 下面来演示使用插件抓取JS动态创建的页面内容。 安装 使用Composer安装: 安装QueryList GitHub: https://github.com/jae-jae/QueryL...

土木x
2017/10/07
528
0
Web 自动化测试与智能爬虫利器:PhantomJS 简介与实战

估计部分同学没听过这个工具,那先简单介绍下它的背景与作用。 1、PhantomJS 是什么? PhantomJS是一个基于WebKit的服务器端JavaScript API,它无需浏览器的支持即可实现对Web的支持,且原生...

大数据之路
2015/04/28
27.6K
2
ubuntu 安装phantomjs、chromedriver、geckodriver

一、安装phantomjs 1.从官网下载http://phantomjs.org/download.html 2.加压 tar -zxvf phantomjs-2.1.1-linux-x86_64.tar.bz2 3.mv phantomjs-2.1.1-linux-x86_64 /usr/local/share/phanto......

littlemesieV
2018/04/18
315
0
CasperJS 的安装和快速入门

CasperJS 是一个开源的导航脚本和测试工具,使用 JavaScript 基于 PhantomJS 编写,用于测试 Web 应用功能,Phantom JS是一个服务器端的 JavaScript API 的 WebKit。其支持各种Web标准: DO...

红薯
2012/05/30
11.1K
4
PhantomJS+Echarts生成图片(POI第三方集成工具,HttpClient.post)

网友结论:PhantomJS技术方案老旧,推荐使用Puppeteer, 最差也用 casperjs PhantomJS+Echarts生成图片(https://gitee.com/liuzidong/PhantomJSForEcharts) 参考资料 1. ECharts - Java类库(...

近在咫尺远在天涯
09/02
68
0

没有更多内容

加载失败,请刷新页面

加载更多

川普给埃尔多安和内堪尼亚胡的信

任性 https://twitter.com/netanyahu/status/1186647558401253377 https://edition.cnn.com/2019/10/16/politics/trump-erdogan-letter/index.htm...

Iridium
8分钟前
3
0
golang-mysql-原生

db.go package mainimport ("database/sql""time"_ "github.com/go-sql-driver/mysql")var (db *sql.DBdsn = "root:123456@tcp(127.0.0.1:3306)/test?charset=u......

李琼涛
36分钟前
2
0
编程作业20191021092341

1编写一个程序,把用分钟表示的时间转换成用小时和分钟表示的时 间。使用#define或const创建一个表示60的符号常量或const变量。通过while 循环让用户重复输入值,直到用户输入小于或等于0的值...

1李嘉焘1
36分钟前
4
0
Netty整合Protobuffer

现在我们都知道,rpc的三要素:IO模型,线程模型,然后就是数据交互模型,即我们说的序列化和反序列化,现在我们来看一下压缩比率最大的二进制序列化方式——Protobuffer,而且该方式是可以跨...

算法之名
42分钟前
18
0
如何用C++实现栈

栈的定义 栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压...

BWH_Steven
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部