30

我正在使用 PhantomJS 调用网页,如下所示:

page.open('http://example.com', function (s) {
  console.log(page.content);
  phantom.exit();
});

我在 Drupal Simpletests 的上下文中使用它,这需要我设置一个特殊的 USERAGENT 才能使用测试数据库而不是真实数据库。我想获取特定用户代理的网页。例如,在带有 Curl 的 PHP 中,我可以在进行 cUrl 调用之前使用 CURLOPT_USERAGENT 执行此操作。

谢谢!

阿尔伯特

4

1 回答 1

51

I found the answer in the useragent.js file in the phantomjs examples directory:

var page = require('webpage').create();
console.log('The default user agent is ' + page.settings.userAgent);
page.settings.userAgent = 'SpecialAgent';
page.open('http://www.httpuseragent.org', function (status) {
    if (status !== 'success') {
        console.log('Unable to access network');
    } else {
        var ua = page.evaluate(function () {
            return document.getElementById('myagent').innerText;
        });
        console.log(ua);
    }
    phantom.exit();
});
于 2013-10-03T12:33:11.457 回答