3

screenshot.js

var page = require("webpage").create();
var homePage = "http://www.google.com/";
page.open(homePage);
page.onLoadFinished = function(status) {
  var url = page.url;
  console.log("Status:  " + status);
  console.log("Loaded:  " + url);
  page.render("google.png");
  phantom.exit();
};

Terminal:

bin/phantomjs screenshot.js

Question: Is there any way that I can send phantomjs the URL (value of var homePage above) somehow outside of screenshot.js so that its not hard coded inside the script?

4

1 回答 1

6

将url添加到命令行

bin/phantomjs screenshot.js http://www.google.com/

这里有一个来自文档的例子:https ://github.com/ariya/phantomjs/blob/master/examples/arguments.js

var system = require('system');
if (system.args.length === 1) {
    console.log('Try to pass some args when invoking this script!');
} else {
    system.args.forEach(function (arg, i) {
            console.log(i + ': ' + arg);
    });
}
phantom.exit();
于 2013-05-30T19:47:30.733 回答