Selenium を使用して Web ページを自動化すると、次のようなシナリオが発生すると思います。
get を使用して特定の URL にアクセスすると、上図に示すようなポップアップ ボックスがページ上に表示されます。
最初に考えられるのは、Alert クラスを使用してこれを処理することです。
しかし、残念ながら、Alert クラスの処理結果は何も得られず、ポップアップ ボックスを閉じることができません。
アラートを処理してもポップアップ ボックスを閉じることはできず、ポップアップ ボックスを閉じないとページ上の他の操作を実行できません。
解決
キーボードの Enter キーを使用してポップアップを閉じます。
send_keys メソッドは要素の Selenium のキー値しか送信できないため、現在のケースではポップアップ ボックスを見つけることができません。
そこでPythonでキーボード操作を実装するにはPyKeyboadを使います
具体的な解決手順
ステップ 1: PyKeyboard を使用するには、まず pywin32->pyHook->PyUserInput をインストールする必要があります。
(1) pywin32をインストールする
海外のソースから pywin32 をインストールする場合、タイムアウトによりインストールが失敗することがよくあるため、国内のソースからインストールすることをお勧めします。
cmd を使用して国内のソースから pywin32 をインストールできます。コマンドは次のとおりです。
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pywin32
その中には、https://pypi.tuna.tsinghua.edu.cn/simple が清華大学のミラー ファイル アドレスがあります。
以下のような他の国内ソースも利用できます。
アリババクラウド: https://mirrors.aliyun.com/pypi/simple/
Douban: https://pypi.douban.com/simple/
(2) pyHookのインストール方法
https://blog.csdn.net/dianmomanxue/article/details/95044676 から pyHook の対応するバージョンをダウンロードした後、cmd で pyHook のフォルダー パスを入力した後、次のように入力します。
pip インストール pyHook1.5.1cp37cp37mwin_amd64.whl
(3) PyUserInputのインストール方法
cmd を使用して、次のように入力します: pip install PyUserInput
ステップ 2: PyKeyboard を py ファイルにインポートし、Enter キーを入力します。
他のキーを押す必要がある場合は、PyKeyboard を選択し、ctrl+b を押して、special_key_assignment 関数のプロパティの説明を表示します。
この記事の冒頭にあるスクリーンショットの完全な処理コードは次のとおりです。
最後に:熱心なファンに恩返しするために、完全なソフトウェア テスト ビデオ学習チュートリアルを作成しました。必要な場合は、無料で入手できます。【保证100%免费】
ソフトウェアテストの面接ドキュメント
私たちは高給の仕事を見つけるために勉強しなければなりません。次の面接の質問は、アリ、テンセント、バイトなどの一流インターネット企業からの最新の面接資料であり、一部のバイトの上司が権威ある回答をしています。このセットを完了してください。面接資料は誰もが満足のいく仕事を見つけることができると信じています。