我有一个网页,它在显示给用户之前使用客户端JavaScript来格式化页面上的数据。
有没有可能以某种方式使用wget
下载页面,并使用某种客户端JavaScript引擎来格式化数据,就像在浏览器中显示数据一样?
发布于 2011-05-06 01:19:01
您可能可以使用PhantomJS之类的东西来实现这一点
您可以编写一个phantomjs脚本,该脚本将像浏览器一样加载页面,然后截图或使用JS检查页面并提取数据。
发布于 2015-12-09 17:52:22
这是一个简单的小phantomjs脚本,它可以在网页上触发javascript,并允许你在本地下载它:
file: get.js
var page = require('webpage').create(),
system = require('system'), address;
address = system.args[1];
page.scrollPosition= { top: 4000, left: 0}
page.open(address, function(status) {
if (status !== 'success') {
console.log('** Error loading url.');
} else {
console.log(page.content);
}
phantom.exit();
});
使用方法如下:
$> phantomjs /path/to/get.js "http://www.google.com" > "google.html"
将/path/to
、url
和filename
更改为您想要的。
发布于 2011-05-06 01:18:56
wget并非如此,因为我怀疑它包含任何形式的JavaScript引擎。但是,您可以使用WebKit来处理页面,从而处理输出。
使用这样的东西作为如何获取内容的基础:http://situated.wordpress.com/2008/06/04/take-screenshots-of-a-website-from-the-command-line/
https://stackoverflow.com/questions/5901661
复制相似问题