我有一个基于Phantomjs的网络监控示例的简单脚本,它试图记录与特定网站相关的所有请求和响应头:
"use strict";
var page = require('webpage').create(),
system = require('system'),
address;
if (system.args.length === 1) {
console.log('Usage: getRequests.js <some URL>');
phantom.exit(1);
} else {
address = system.args[1];
console.log('The url entered is ' + address + '\n')
page.onResourceReceived = function(response) {
console.log('Received Request: ' + JSON.stringify(response.headers, undefined, 4) + '\n');
};
page.onResourceRequested = function (req) {
console.log('Request URL ' + JSON.stringify(req.url, undefined, 4) + "\n");
}
page.onResourceError = function(resourceError) {
console.log('Unable to load resource (#' + resourceError.id + 'URL:' + resourceError.url + ')');
console.log('Error code: ' + resourceError.errorCode + '. Description: ' + resourceError.errorString);
};
page.open(address);
}但是,当我试图使用./phantomjs getRequests.js www.google.com (或任何其他网页)运行它时,它会给出错误:
The url entered is www.google.com
Request URL "file:///home/myusername/scripts/www.google.com"
Unable to load resource (#1URL:file:///home/myusername/scripts/www.google.com)
Error code: 203. Description: Error opening /home/myusername/scripts/www.google.com: No such file or directory
Received Request: []基本上,我在终端上输入的url是以脚本文件的路径为主的。我在address变量中获得的输入非常好,即google.com。
有谁能帮忙解决这个问题吗?我不明白为什么幽灵会这么做。我正在VirtualBox上运行Ubuntu14.04。当我试图输出特定页面的请求时,脚本运行得很好。谢谢。
发布于 2016-09-29 08:17:27
你可能会笑,但是正确的使用脚本的方法是
./phantomjs getRequests.js http://www.google.comhttps://stackoverflow.com/questions/39764405
复制相似问题