3

私は phantomjsdriver 1.8.1 for .net (C#) http://www.nuget.org/packages/phantomjs.exe/を使用しており、Web コンテンツをロードする前にユーザー エージェント Firefox を追加する方法を考えています。

4

2 に答える 2

14

Cyber​​max の回答はある程度正しいですが、実際に使用しているもの (C#) に関しては正しくありません。PhantomJSDriverC# でのユーザー エージェントを指定するには、それを「追加機能」として指定する必要があります。

var options = new PhantomJSOptions();
options.AddAdditionalCapability("phantomjs.page.settings.userAgent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0");

これらのオプションは、ドライバーの作成に使用されるコンストラクターに渡す必要があります。

var driver = new PhantomJSDriver(options);

これが正しく設定されていることを確認するには、 WhatIsMyUserAgent.comなどのブラウザのユーザー エージェントを示す Web サイトをチェックするか、PhantomJS コンソール ウィンドウをよく見てください。そこに「useragent」値があり、上で指定した値に設定されているはずです。

于 2013-10-28T09:33:24.080 に答える
0

スクリプトでは、 page.openへの最初の呼び出しの前にプロパティpage.settings.userAgentを定義する必要があります。

var page = require('webpage').create();
page.settings.userAgent = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0'; //firefox 25
page.open('http://stackoverflow.com/', function (status) {
  // do something
});

注 : PhantomJS の最終バージョンは 1.9.2 です。別のパッケージはこちらから入手できます。

于 2013-10-28T07:30:23.390 に答える