2013-10-28 62 views

回答

13

雖然Cyber​​max的答案有點正確,但它在實際使用的方面不正確 - C#。要指定在C#中PhantomJSDriver用戶代理,你需要給它作爲一個「附加功能」:

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),或者仔細查看PhantomJS控制檯窗口,它將在那裏具有「useragent」值,並且你應該看到它已經被設置爲你在上面指定的內容。

0

在你的腳本之前添加用戶代理的Firefox,你必須在第一次調用之前定義屬性page.settings.userAgent到page.open。

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。另有一個包可用here

相關問題