問題タブ [google-chrome-headless]
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.
selenium-webdriver - chromedriver ヘッドレス アラート
この問題は、chromedriver を使用した Selenium Webdriver テストで発生します。Chrome ブラウザーを使用するとテストを正常に実行できますが、ヘッドレス モードでは同じテストを実行できません。
Jsアラートを処理できません。実際にスクリーンショットを撮っても、アラートがポップアップしないようです。
私はいくつかの回避策を試しました:
1) driver.window_handles
--> 他のウィンドウが存在しないようです
2) driver.execute_script("window.confirm = function(){return true;}")
--> そのスクリプトでは何も変わっていません
3)element = WebDriverWait(driver, 20).until(EC.alert_is_present())
そしてもちろん明示的な待機
ブラウザモードでは、プレーンを使用します:
ヘッドレスモードのアラートでこの問題を抱えている人はいますか?
- クロームドライバー v.2.30.477691
- Chrome バージョン 59.0.3071.115
ruby - クロムウィンドウを使用したヘッドレスクロム実行テスト
自動テスト Web アプリにカピバラ、キュウリ、ポルターガイストを使用しています。env.rb に登録されているドライバーであるポルターガイスト (phantomjs) からヘッドレス クロームに切り替えることにしました。
次に、他のドライバー設定を登録しました:
テストを実行すると、Chrome が読み込まれますが、アクティブなウィンドウはありません。それでうまくいくはずですか?近いうちに docker コンテナー (GUI なしの ubuntu) でテストを実行する予定ですが、Chrome ブラウザーをインストールする必要がありますか?
Mac OS X 10.12.5 Chrome 60 Chromedriver 2.31
Gems: selenium-webdriver (3.4.4, 2.53.4, 2.53.0) capybara (2.14.4, 2.10.1, 2.6.2, 2.4.4) chromedriver-helper (1.0.0)
google-chrome - Windows 10 の Chrome 60 でヘッドレス Chrome を使用するにはどうすればよいですか?
ヘッドレス Chrome に関する次の記事を見てきました:
https://developers.google.com/web/updates/2017/04/headless-chrome
Windows 10 の Chrome をバージョン 60 にアップグレードしましたが、コマンド ラインから次のいずれかのコマンドを実行しても、何も起こらないようです。
これらのコマンドはすべて、次のパス (Windows 上の Chrome の既定のインストール パス) から実行しています。
コマンドを実行すると、何かが処理されているように見えますが、実際には何も表示されません。私は何を間違っていますか?
ありがとう。
編集:
Mark Rajcok が指摘したよう--enable-logging
に、--dump-dom
コマンドに追加すると機能します。また、この--print-to-pdf
コマンドは Chrome 61.0.3163.79 でも同様に機能しますが、出力ファイルを保存するために必要なアクセス許可を得るには、出力ファイルに別のパスを指定する必要があるでしょう。
そのため、次の2つのコマンドが機能しました。
次のステップは、DOM セレクターなどを使用して、PhantomJS のようなダンプされた DOM をステップスルーできるようにすることだと思いますが、それは別の質問だと思います。
編集#2:
価値のあるものとして、私は最近、Puppeteer ( https://github.com/GoogleChrome/puppeteer ) と呼ばれるヘッドレス Chrome 用の Node API に出会いました。これは非常に使いやすく、ヘッドレス Chrome のすべての機能を提供します。ヘッドレス Chrome を簡単に使用する方法を探している場合は、強くお勧めします。
google-chrome - 拡張機能を使用して Google Chrome をヘッドレス モードで実行することは可能ですか?
ヘッドレス モードを使用して、Google Chrome に現在インストールされている拡張機能を使用できません。それらを有効にする方法はありますか?
拡張機能が機能するかどうかを確認する簡単な方法は、たとえば、「Comic Sans Everything」拡張機能を追加することです。
したがって、Google は次のようになります。
ただし、ヘッドレス モード ( google-chrome --headless --disable-gpu --screenshot https://www.google.com
) を使用してページのスクリーンショットを撮ると、結果は次のようになります。