webdevqa.jp.net

PHPヘッドレスブラウザ?

PHP用のヘッドレスブラウザライブラリはありますか? JSエンジンが組み込まれているものが欲しいです。 [〜#〜] foss [〜#〜] 推奨。

18

PhantomJS -- http://phantomjs.org/

PhantomJSは、JavaScriptAPIを備えたヘッドレスWebKitです。 DOM処理、CSSセレクター、JSON、Canvas、SVGなどのさまざまなWeb標準を高速かつネイティブにサポートしています。

必要に応じて、php-PhantomjsRunner(非推奨)のようなものと組み合わせることができますまたは 自分で焼く

セットアップしてPhantomJSでテストを開始する準備ができたら、さまざまなテストフレームワークのいずれかを自由に選択してください。

私は最近、tutsplusからのこのチュートリアルに出くわしました。

21

mink をチェックしてください。バックエンドとして zombie がサポートされています。

見た目はかなり良く、十分にサポートされているようです。


編集

残念ながら、phpにはネイティブのjavascriptインタープリターがありません。したがって、javascriptサポートを含むpurephp実装を探している場合、現在、それは見つかりません。 javascriptをサポートするヘッドレスの場合、バックエンドでnode.jsやphantomjsなどに依存する必要があります。

あなたはすでにそれらを見たことがあると思いますが、見出しがあるか、JavaScriptのサポートがない他のオプションについては、 Minkの他のバックエンド は一読する価値があります。

7
David

http://seleniumhq.org/ が必要なようですが、これは PHPUnit と一緒に使用して単体テストを実行することもできます。

SimpleTest Browser もご覧ください。

3
Xeoncross

Goutteは、PHP用のシンプルなヘッドレスブラウザです。 https://github.com/fabpot/Goutte

残念ながら、JSはサポートしていません。

3

さて、誰かcouldPHPで実行されているろくでなしのヘッドレスWebブラウザを作成できますJavascriptサポートが実装されていますPHPで

2
Prof. Falken

PHPに限定されていない場合、またはシステムコールを使用できる場合は、xvfbを確認してください。これは仮想フレームバッファーであり、これを使用して、完全なJS機能を備えたLinuxベースのブラウザー(Firefox)を実行できます。画面データを取り込んでファイルに書き込むこともできます。

特定のメトリックを収集するときに、これを以前に実行しました。

0
Tango Bravo

Seleniumプロジェクトの一部である HTMLUnitドライバー を使用します。 WebDriverはWebkit(私は信じています)に基づいているので、HTMLUnit(Seleniumから)を使用することは基本的にJavaソリューションです。次に、Javaコードを呼び出すことができると思いますPHPからですが、それを機能させるための詳細はわかりません。

0
djangofan