この記事では、ある大学の健康報告システムを例に、Web 側の自動化操作を完成させます。使用したテクノロジー スタックは次のとおりです。 基本的な考え方: 1. ローカルでコードを書いてデバッグするまず、操作する必要があるターゲット Web を見てみましょう。 フォームページ: 操作は非常に簡単です。ログインして、必要なオプションをチェックし、「送信」をクリックするだけです。 添付のソースコード: メインファイル: yagmail経由でメールを送信: 注意:ここではパスワードではなく、メールアドレスの[認証コード]を使用します。 QQ メールボックスは、[設定] => [アカウント] で操作できます。 セレン自動化: ここでは Xpath ポジショニングが使用され、ブラウザはそれを直接キャプチャできるため、非常に便利です。 最後に quit と stop を追加することを忘れないでください。そうしないと、プロセスが積み重なって閉じることができなくなり、クラッシュが発生します。問題なくローカルで実行したら、次の手順に進むことができます。 2. Dockerコンテナ環境を構成する環境設定は次の手順で行います Python イメージをプルする<br /> これを行うには、Docker が正しくインストールされていることを確認し、次のコマンドを使用してイメージをプルする必要があります。 docker イメージ プル python ローカルにプルされたかどうかを確認するには、次のコマンドを使用します。 dockerイメージls Pythonイメージを使用して新しいコンテナを作成する 次のコマンドを使用して新しいコンテナを作成し、そのコンテナに入ります。 docker run -it python /bin/bash 操作に必要なサードパーティ ライブラリをインストールします<br /> ライブラリは、次のような簡単な pip コマンドでインストールできます。 pip でセレンをインストールする pip でyagmailをインストール pip pytz をインストール インストール後はデバッグして確認することができます。ここでは詳細には触れません。 ChromeブラウザとChromedriverをインストールする # ダウンロード wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb # dpkg -i google-chrome-stable_current_amd64.deb をインストールします chromedriver をインストールする前に、chrome のバージョン番号を確認し、バージョン番号に応じて対応するドライバーをダウンロードする必要があります。 # Chromeのバージョンを確認する google-chrome --version chromedriver に関しては、ローカルにダウンロードして解凍し、ssh を使用してサーバーに転送しました。 ドライバーのアドレス/chromedriver root@server IP:server directory を scp します 次に、それをホストからコンテナにコピーします。 docker cp chromwdriver コンテナ名: コンテナディレクトリ コードもこのようにアップロードされ、後続の関連操作では、簡単なデバッグのために python コマンドを繰り返し入力する必要がなくなります。 確認のためにテスト ファイルをアップロードします。 メールが正しく出力され送信できる場合は、次のステップに進むことができます。 コンテナを画像にする テスト ファイルを削除した後、exit と入力してコンテナーを終了し、次のコマンドを使用してイメージを作成します。 sudo docker コミット eafd9111ada6 docker/sele_heath コミット後の値はコンテナ ID またはコンテナ名です。不明な場合は、docker ps -a と入力して表示できます。 完了したら、次のコマンドを入力して、新しく作成されたイメージを表示できます。 docker イメージ docker/sele_heath イメージを使用してコンテナをインスタンス化し、コードをマウントするイメージがビルドされたら、最後のステップに進むことができます。コマンドは次のとおりです。 docker run -d -v /home/admin/heath2:/usr/src -w /usr/src docker/sele_heath python main.py コマンド分析: コンテナが正常に実行されているかどうかを確認するには、次のコマンドを入力します。 ドッカーps この時点で、すべての操作が完了しました。あとは起きて携帯電話を取り出してメールを確認するだけです。 Docker+Selenium で自動ヘルスレポートを実現する方法についての記事はこれで終わりです。Docker Selenium 自動化に関する関連コンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Vue コンポーネントの構成構造とコンポーネント登録の詳細
>>: 一般的なメールボックスで正常に表示できる HTML メールを作成するためのヒント
目次1. MySQL で現在の時刻を表現するにはどうすればよいでしょうか? 2. TIMESTAMP...
ユーレカ: 1. JDKイメージを構築するEurekaコンテナを起動するjdkフォルダと必要なファイ...
質問: インデックスは作成されているのに、Like ファジー クエリがまだ遅いのはなぜですか?インデ...
1. MySQLをシャットダウンする [root@localhost /]# サービスmysqldを...
数日前に仕事を始めて、Mysql をインストールしたところ、開くことができました。今日、会社に行った...
序文現在、プロジェクトでは、Axios ライブラリが HTTP インターフェース リクエストによく使...
ムーアの法則はもはや適用されない2004年にフレックストロニクスがフロッグデザインを買収したのを皮切...
以下のデモはMySQLバージョン5.7.27に基づいています。 1. MySQLサブクエリ最適化戦略...
目次1. データベースを操作する1.1 データベースを作成する1.2 データベースをクエリする1.3...
親ディレクトリを指定する方法../ はソース ファイルの親ディレクトリを表し、../../ はソース...
前回の投稿では、Web ページの作成方法について説明しました。Web サイトは多くの Web ページ...
マシンに初めて MySQL をインストールします。オペレーティングシステムはwin7ですmysqlの...
効果画像: 序文:最近、屋外の大画面プロジェクトに取り組んでいました。システムの入力方法は使いにくか...
1. オンラインテキストジェネレーターBlindTextGenerator: デザイナーにとって、こ...
1. 環境整備:オペレーティング システム: CentOS Linux リリース 7.5.1804 ...