我正在尝试使用幻像js进行屏幕抓取。
我已从此网站复制了一些phantomjs代码:http://snippets.aktagon.com/snippets/534-How-to-scrape-web-pages-with-PhantomJS-and-jQuery
从该脚本开始,我已将其修改为:http://jsfiddle.net/dqfTa/(请参阅javascript)
我的目标是从网站收集价格,这是“.price”标签的内部html,成为一个javascript数组。现在我正在尝试将console.log()用于我的屏幕。
我正在通过ubuntu 12.04控制台运行phantomjs v1.6和jquery v1.8。我将用户代理设置为“iPhone”。
这是我的输出:
nwo@aws-chaos-us-w-1:~/sandbox$ phantomjs usingjqueryandphantom.js
hello
success
============================================
Step "0"
============================================
它永远不会超过第0步。看看我的代码,我做了一个console.log("h1");
,但它不会输出它。我在这里做错了什么?
答案 0 :(得分:4)
Phantomjs要求您挂钩来自其页面上下文的控制台输出。来自API reference:
当有JavaScript控制台消息时,将调用此回调 网页。回调最多可以接受三个参数: 消息的字符串,行号和源标识符。
默认情况下,不显示来自网页的控制台消息。 使用此回调是重定向它的典型方法。
page.onConsoleMessage = function(msg) {
console.log("This message came from the webpage: "+ msg);
};