問題タブ [phantomjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
phantomjs - phantomjsの画面キャプチャ時間を高速化しますか?
PhantomJS が提供する rasterize.js の例を実行しているときに、Web ページの画像が生成されるまで 20 秒以上待たなければならないことがわかりました。
多くのリソースを消費せずにこれを高速化する方法はありますか? 私は基本的に、PhantomJS が読み込まれた Web ページからキャプチャされた一連の連続した画像を迅速に生成することを目指しています。Phantomjs を何とかビデオ ストリームに出力できれば、本当に素晴らしいことです。
とりあえず、Web ページのスクリーンショットを PhantomJS で 1 ~ 2 秒以内に撮影できるものを探します。これを達成するプロジェクトまたはライブラリが既にある場合は、それも素晴らしいでしょう。
javascript - phantomjsは常にWindowsで解析エラーを出します
これはばかげた問題のように聞こえるかもしれませんが、理由がまったくわからないようです
Windowsバイナリをダウンロードし、クイックスタートの手順に従って例を使用してみましたが、コンソールに何かを入力すると、常に「解析エラー」が発生します。
私は試した:
といくつかのサンプルスクリプト、そして私は常に「解析エラー」を受け取ります
hello.jsファイルにはこれが含まれています
console.log('Hello, world!');
phantom.exit();
何が悪いのかわかりません...助けていただければ幸いです...これはばかげたものになると確信しているので、お時間をいただきありがとうございます!ありがとう
javascript - Phantom.jsはOSXコンソールから実行されません
ExtJSアプリを開発していて、Phantom.jsを使用してビューをPDFとしてレンダリングしたいと思います。OSX用のバイナリパッケージをダウンロードしました。解凍した後、それにシンボリックリンクを追加し、PATHに追加しました。コンソールで「phantomjs」を実行した後、次のようになります。
そしてそれがすべてです。サンプルスクリプトのいずれかを実行しようとするとrequire is undefined
、バージョンを確認できず、基本的に使用できないというメッセージが表示されてクラッシュします。私はbatファイルを実行することができます、そしてそれは私にphantomjsシェルを与えます。以前にダウンロードしたものをすべて削除した後でも、同じ結果で「phantomjs」コマンドを実行できます。おそらくSenchaのSDKにはそれがありますが、PATHに表示されていないため、わかりません。何か案は ?
installation - Ubuntu11にphantomjsをインストールする
私は2つのインストールガイドに従いました。これはhttp://code.google.com/p/phantomjs/wiki/Installationです。
そしてこれ:http: //yoodey.com/comment/10803
どちらの場合も、問題は、binディレクトリにphantomjsという名前のファイルが含まれているはずなのに、含まれていないことです。最初のガイドでは、Info.plistファイルのみが含まれており、2番目のガイドではビンが空です。
phantomjs - 簡単な例で PhantomJS を動作させることができません
実行可能ファイルをダウンロードし、/usr/local/bin への simlink を作成しました。
Mac OSX 10.7 を使用しています
次に、いくつかのモジュールを必要とするスクリプトを実行しようとすると、つまり
エラーが発生しました
'require' が予約語と見なされず、可変記号として解釈されるかのように。
(余談ですが、phantomjs を起動すると、Dock に Sencha Touch アイコンが表示されます)
unit-testing - phantomjs と jasmine を使用した単体テスト中に Web ページのスナップショットを取得する
jasmine と phantomjs の通信がうまくいかないようです。ファントム js のサンプル フォルダーにある run-jasmine.js ファイルを使用しています。私が得る問題は、ファイルがシステムを見つけることができないため、システムを要求できないことです。
これは特定のメッセージです:
その上、ジャスミンで動作するhtmlファイルのdom操作を取得する方法を考えていました。
編集: ファントム js のヘッドレス ブラウザー機能を使用しているだけなので、DOM の問題は単純なようです。まだシステムの問題があり、ページの読み込みが完了したときではなく、各テストの間にレンダリング ページを呼び出す方法を考えています。
javascript - ローカル js スクリプトからローカル Phantom.js サーバーへの Ajax 呼び出し
Web アプリケーション (ExtJs で記述) をホストするローカルで実行する Apache サーバーをセットアップしました。また、phantom.js で作成され、ポート 8080 でリッスンする 2 番目のローカル サーバーもあります。
ここで、アプリケーションからファントム サーバーへの Ajax リクエストを実行したいと思います。
しかし、このスクリプトを実行すると、次のようになります。
"NetworkError: 400 Bad Request - http://localhost:8080/?_dc=1336648497292"
コンソールで。この操作は同一オリジン ポリシーに違反していますか? それとも何か他のものですか?localhost:8080 に移動すると適切な応答が表示されるため、サーバーは適切に実行されています。
javascript - サーバー上で実行されているページをPDFとして生成する方法
ボタンをクリックしてからPDF版のページを作成する必要があるため、作業は簡単ではありません。複雑なdom構造であり、多くの要素が絶対的/相対的に配置されており、データは動的にロードされます。PDFの生成を可能にするため、このタスクにPhantom.jsサーバーを使用することを考えましたが、これにはいくつかの問題があります。
- phantomjsは、コンソールから実行するか(PDFの生成はUNIXシステムとWINシステムの両方で使用可能であり、ページから実行できるのはシェルスクリプトのみであるため、ここでは不可能です)、または組み込みサーバーを使用して実行できます。
- サーバーはページを実行しているサーバーとは異なるドメインを持っているため、同一生成元ポリシーの問題が発生します。srcと私のページのhtmlが引数で渡されるので、phantomjsサーバーアドレスでiframeを使用することを考えていましたが、引数が長すぎて413エラーを返します。JSONPはGETリクエスト用に構築されており、引数が長すぎる場合と同じ問題が発生するため、機能しません。
クライアント側で生成することも考えましたが、サイトが複雑なため、ページの適切な表現を取得するのにおそらく何日もかかるでしょう(すべてのポジショニング値をptsに再計算する必要があるため)。一般的なソリューション。
これを解決する方法の他のアイデアはありますか?
javascript - PhantomJS を使用して Web ページが 404/500 を返すことをテストするにはどうすればよいですか?
私は PhantomJS と Javascript が初めてで、読み込み時間をテストするスクリプトに取り組んでいます。テスト中にエラー 404/500 が発生したかどうかを検出し、console.log にメッセージを表示したいと考えています。 . コードは次のようになります。
助けていただければ幸いです。ありがとう
javascript - PhantomJSはnullを返す基本認証で評価します
基本的な常に認証のあるページ、たとえばこのページでPhantomJSを使用しようとしています。
http://alexturpin.net/auth(test:rosebud
)
次のコードを使用する
この出力を取得します
何を試しても、が含まれているためページが正常に開かれたように見えても、evaluate
戻り続けます。null
status
"success"
http://alexturpin.net/noauthのように、基本認証なしでページを開くことにした場合でも、同じ結果が得られます。ページを開く前に最終的に認証設定を完全に削除した場合にのみ、機能します。
認証設定の使用は、と競合しているようですevaluate
。これはPhantomJSのバグですか、それとも何か見落としていましたか?