来自PhantomJS快速入门教程:
PhantomJS 是一个基于 WebKit 的服务器端 JavaScript API。它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG。 PhantomJS 可以用于 页面自动化 , 网络监测 , 网页截屏 ,以及 无界面测试 等。
安装包下载地址: http://phantomjs.org/download.html
windows调用过程:
Cmd>>Phantomjs>>JS脚本文件,并输出内容
ahk调用过程:
执行cmd命令,获取输出内容
按照教程:
Hello, World!
新建一个包含下面两行脚本的文本文件:
console.log('Hello, world!'); phantom.exit();
将文件另存为 hello.js
,然后执行它:
phantomjs hello.js
输出结果为:Hello, world!
第一行将会在终端打印出字符串,第二行 phantom.exit
将退出运行。
在该脚本中调用 phantom.exit
是非常重要的,否则 PhantomJS 将根本不会停止。
ahk结合帮助文件用法:
(环境win7x64,AHKU32,js文件编码ANSI,和AHK脚本文件以及phantomjs.exe放在一起)
MsgBox % RunWaitOne("phantomjs.exe hello.js") RunWaitOne(command) { shell := ComObjCreate("WScript.Shell") ; 通过 cmd.exe 执行单条命令 exec := shell.Exec(ComSpec " /C " command) ; 读取并返回命令的输出 return exec.StdOut.ReadAll() }
获取网页标题
// a phantomjs example var page = require('webpage').create(); phantom.outputEncoding="gbk"; page.open("http://www.autoahk.com", function(status) { if ( status === "success" ) { console.log(page.title); } else { console.log("Page failed to load."); } phantom.exit(0); });
将文件另存为 autoahk标题.js
,然后AHK脚本添加:
MsgBox, % RunWaitOne(“phantomjs.exe autoahk标题.js”)
弹窗提示:智能热键
网页截屏
var page = require('webpage').create(); page.open('http://example.com/', function () { page.render('test.png'); phantom.exit(); });
将文件另存为 test.txt
,然后AHK脚本添加:
MsgBox, % RunWaitOne(“phantomjs.exe test.txt”)
个人感觉
不是很快,不适合太复杂网页
其他参考官方示例
这个不错 等有空研究一下 我这边需要这个
?