2016-09-24 3 views
1

私はPhantomJSを使用するのが比較的新しいので、私たちのウェブサイトのスクリーンショットを取っておきたいと思います。私が知りたいことは、ユーザーエージェントの設定を変更するとスクリーンショットの視点に影響を与えるかどうかです(つまり、イメージは異なるように見えますか)。 - そうでない場合は、別のブラウザをエミュレートするスクリーンショットを撮ることができます(うれしいことに、Phantomを使用していますが、提案に公開しています)。PhantomJSのユーザエージェント設定を変更すると、スクリーンキャプチャ/スクリーンショットのパースペクティブが変更されますか?

// PhantomJS Code 
page = require('webpage').create(); 
// Used for Firebird (old Firefox) 
page.settings.userAgent = 'Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.5) Gecko/20031007 Firebird/0.7'; 
// Used for Chrome 
page.settings.userAgent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36'; 
page.viewportSize = {width: 1200, height : 800}; 
page.open("webAddress", function() { 
    page.render(picName); 
    pahntom.exit(); 
}); 

Link to HTML/CSS code used and referenced below

はい、私は、ユーザエージェントの属性を変更することによってテストし、そして(上記のコード)を確認するために、スクリーンショットをとっています。私たちのサイトはよく定義されており、一般的にブラウザからブラウザに変更されないので、これは予防的な操作です。 - 私はまた、異なるブラウザで使用されたときに意図的にサイトが異なって見えるように変更しようとしました。彼らは私が何を変えても、PhantomJSによって同じように捕らえられているように見えます。

**免責事項:前述のように、私はPhantomJSに比較的新しいです。私は多くのドキュメントと関連記事を読んだことがありますが、私の質問に対する回答はまだ見つかりませんでした。私は新しいWeb開発者でもあります(私は必ずしも初心者プログラマーではありませんので、バックエンドプログラミングをしています)ので、私の "意図的な"変更は間違っていましたか?あるいは、私はuser-agent属性を正しい方法で使用していないでしょうか?

もっと具体的にできるかどうか教えてください。 - いずれか/すべてのヘルプは非常に高く評価されるだろう!

+0

もちろん、違って見えることがあります。 –

答えて

0

それは確かにです。は異なって表示されます。デフォルトでは、固定幅のページで応答するWebサーバーもあります。 Webサーバーに認識され、モバイルブラウザを示すユーザーエージェント文字列を特に設定した場合は、ページの画面最適化バージョンが小さくなることがあります。

PhantomJSのデフォルトのビューポートは400 x 300ピクセルです。これは、ページのモバイル版が予想通りにレンダリングされる可能性があることを意味します。固定幅のページでは、そのビューポートのサイズを大きくすることができます。

すべてのサイトがユーザーエージェントの文字列によって異なる反応をするわけではありません。複数のスクリプトを実行しているときに何も変更せずにスクリーンショットを撮ると、ページだけでなくページが頻繁に変更されるため、ページの外観が異なる可能性があります。

+0

ありがとう! - 実際に私自身のビューポート設定を設定しました。ユーザーエージェントを変更するときにさまざまなブラウザからの結果が変わるのを防ぐことはできますか? 私が尋ねる理由は、私が上で走ったテストのb/cです。私はクロムWebブラウザのユーザーエージェントを使用し、モバイルSafariユーザーエージェントを使用しました。しかし、結果は同じように見えました。おそらくこれはビューポートを定義したb/cですか? – SeanRamzan

+0

一部のWebサイトでは、ユーザーエージェントの文字列をまったく検出せず、レスポンシブデザインを使用してビューポートサイズに依存しています。 –

+0

ああ、それは問題になる可能性があります。 - 助けをたくさんありがとう@Artjom、それは本当に物事をクリアするのに役立った! – SeanRamzan

関連する問題