Я запускаю PhantomJS, используя фантомный модуль npm. Узел-фантомный модуль Однако я не могу понять, как изменить пользовательский агент.
Сначала я попытался передать объект настроек в page.open вот так: await page.open(url, { userAgent: "spoofed user agent" }), но пользовательский агент не изменился.
Затем я прочитал здесь, что настройки можно изменить, вызвав метод 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'); После открытия страницы.
Ни один из этих вариантов не сработал, хотя кажется, что оба должны работать. Кто-нибудь знает, как обмануть пользовательский агент в phantomjs с помощью фантомного модуля npm?
Обновлено: не знаю, почему, но await page.setting('userAgent', 'userAgent'); работает над изменением пользовательского агента в поле Debian, которое я использую в облачных вычислениях Google, но не в Mac OS X.





В документации сказано изменить настройки свойств объекта page.settings (без фигурных скобок)
var webPage = require('webpage');
var page = webPage.create();
page.settings.userAgent = 'Mozilla/5.0 ...';
Нашел здесь в документации phantom.js
PhantomJS не является модулем npm, но вопрос касается одного, поэтому, к сожалению, этот ответ неприменим.
Ваша правка верна, она должна работать. Работает ли скрипт вообще (кроме useragent) на Mac OS или он полностью не работает?