Phantomjs-overview

提供:Dev Guides
移動先:案内検索

PhantomJS-概要

*PhantomJS* は、 *headless browser* と呼ばれます。これは、JavaScriptコードの実行中にブラウザーが関与しないためです。 実行はブラウザの表示ではなく、コマンドラインプロンプトに表示されます。 *CSS処理、DOM操作、JSON、Ajax、Canvas、SVGなどの機能はすべて、コマンドプロンプトで処理されます。 PhantomJSにはGUIがないため、すべての実行はコマンドラインで行われます。

PhantomJSを使用して、ファイルへの書き込み、ファイルの内容の読み取り、ファイルのアップロード、画面キャプチャの取得、WebページのPDFへの変換などを行うことができます。 ヘッドレスブラウザーを使用すると、ブラウザーのすべての動作、つまり* Cookie、HTTPリクエストメソッド* * GET/POST、Cookieのクリア、Cookieの削除*など、ページのリロード、別のページへの移動

PhantomJSは、Google Chrome、Mozilla Firefox、Safariなどの有名なブラウザーと同様のブラウジング環境を持つWebKitを使用します。 また、スクリーンショットの取得、ファイルのアップロード、ファイルへの書き込み、ファイルの読み取り、Webページとの対話などに役立つ多くのJavaScript APIも提供します。

PhantomJSはプラグインを必要とし、コマンドラインで同じものをサポートするのが難しいため、FlashまたはVideoをサポートしません。

PhantomJSの機能

PhantomJSが提供する機能を理解しましょう。

ページ自動化

PhantomJSでは、APIの助けを借りてページのコンテンツを読むことができます。 DOMを操作し、外部ライブラリを使用して必要なタスクを実行するのに役立ちます。

画面キャプチャ

PhantomJSは、指定されたページのスクリーンキャプチャを取得し、PNG、JPEG、PDF、GIFなどのさまざまな形式で画像と同じものを保存するのに役立ちます。 スクリーンキャプチャを使用すると、Webコンテンツが正常であることを簡単に確認できます。

PhantomJSは、開発者がスクリーンショットのサイズを調整し、キャプチャしたい領域を指定できるようにするプロパティとメソッドを提供します。

ヘッドレステスト

PhantomJSは、コマンドラインでのUIのテストに役立ちます。 一方、スクリーンショットを使用すると、UIのエラーを簡単に見つけることができます。 PhantomJSは、単独でのテストでは役に立たない場合があります。 ただし、Mocha、Yoemanなどの他のテストライブラリと一緒にラップできます。 PhantomJSの助けを借りて、ファイルをアップロードしてフォームを送信できます。

PhantomJSを使用して、サイト全体のログインをテストし、セキュリティが侵害されていないことを確認できます。 PhantomJSは、 CasperJS、Mocha、Qunit などの他のツールと一緒に使用して、テストをより強力にすることができます。

ネットワーク監視

PhantomJSの重要な機能の1つは、使用可能なAPIを使用してネットワーク接続を監視する使用法です。 PhantomJSはネットワークトラフィックの検査を許可します。ネットワークの動作とパフォーマンスに関するさまざまな分析を構築するのに適しています。

PhantomJSを使用して、ライブ環境でのWebページのパフォーマンスに関するデータを収集できます。 PhantomJSは、 Yslow などのツールで使用して、任意のWebサイトのパフォーマンスメトリックを収集できます。