次のように、PhantomJSを使用してWebページを呼び出しています。
page.open('http://example.com', function (s) {
console.log(page.content);
phantom.exit();
});
Drupal Simpletestsのコンテキストでこれを使用しています。実際のデータベースの代わりにテストデータベースを使用するには、特別なUSERAGENTを設定する必要があります。Webページをフェッチしたいのですが、特定のユーザーエージェント。たとえば、PHP Curlの場合、cUrl呼び出しを行う前にCURLOPT_USERAGENTを使用してこれを行うことができます。
ありがとう!
アルバート
Phantomjs examples directory の seragent.js ファイルで答えを見つけました:
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();
});