【问题标题】:PhantomJS Node Driver Setting UserAgentPhantomJS 节点驱动设置 UserAgent
【发布时间】:2018-04-23 21:08:07
【问题描述】:

我正在使用 phantom npm 模块运行 PhantomJS。 Node Phantom Module 但是,我不知道如何更改用户代理。

首先我尝试将设置对象传递给 page.open,如下所示:await page.open(url, { userAgent: "spoofed user agent" }),但用户代理未更改。

接下来我读到 here 可以通过调用 page.setting(key, value) 方法更改设置,所以我尝试:await page.setting('userAgent', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.117 Safari/537.36'); 打开页面后。

这些选项都不起作用,尽管看起来两者都应该起作用。有谁知道如何使用 phantom npm 模块欺骗 phantomjs 中的用户代理?

编辑:不知道为什么,但await page.setting('userAgent', 'userAgent'); 正在努力更改我在谷歌云计算上使用但不是在 mac os x 上使用的 debian 盒子上的用户代理。

【问题讨论】:

  • 您的编辑是正确的,它应该可以工作。该脚本在 Mac OS 上是否完全有效(除了 useragent)还是完全失败?

标签: node.js phantomjs user-agent


【解决方案1】:

文档说要更改page.settings 对象的属性设置(不带大括号)

var webPage = require('webpage');
var page = webPage.create();  

page.settings.userAgent = 'Mozilla/5.0 ...';

在 phantom.js 文档中找到 here

【讨论】:

  • PhantomJS 不是一个 npm 模块,但问题是关于一个,所以不幸的是这个答案不适用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-03
  • 2013-04-07
  • 1970-01-01
  • 1970-01-01
  • 2021-08-05
  • 1970-01-01
相关资源
最近更新 更多