質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

Q&A

解決済

1回答

541閲覧

Python(selenium)によって、既に立ち上がっているCromeブラウザに対して、自動操作を行いたい

kimukimu009

総合スコア33

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

0グッド

0クリップ

投稿2020/01/17 10:27

■やりたいこと
Python(selenium)によって、既に立ち上がっているCromeブラウザに対して、自動操作を行いたい

■具体的な手順
1.手動で、Cromeを立ち上げ、画面Aにて、ある操作を行う。(自動ではない)
2.ここで、pythonファイルを実行し、画面Aに対して、自動操作を行う。

■わからないこと
どういった実現方法があるのかが、わかりません。
(・立ち上がっているブラウザを指定して、自動操作を行う?
・ユーザプロファイルを指定して、自動操作を行う?)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

seleniumは元々、Web アプリケーションのテストの自動化を目指して作成されたものですから自動操作できます。
「Selenium について」をよく読んで、整理・質問したらいかがでしょうか。
ただし、seleniumはブラウザを起動して自動操作する仕組みですので、質問者さんの

既に立ち上がっているCromeブラウザに対して

に対しては、考慮が必要かもしれません。


質問者さんのプロフィールをみて、再度回答します。
質問者さんは、seleniumの基本はご存じで、「既に立ち上がっているCromeブラウザに対して」が質問の主旨内容なのですね。
これに対しては、わかりかねます。考え方の方針としてはプロセス間通信(IPC)だと思います。
プロセス間通信のプログラムは自分が作ったシステムで何度も作りましたが、本件の場合相手がビッグなので、わかりかねます。
以上です。

投稿2020/01/17 12:17

編集2020/01/17 12:35
ikapy

総合スコア1167

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kimukimu009

2020/01/17 12:32

ありがとうございます。 拝見させていただきます。
kimukimu009

2020/01/18 05:17

ありがとうございます。 なぜ、こういう質問をしたかといいますと 1も自動化したかったのですが、できそうに無いため、そこまでは、手動にして、 2から、自動化したかったからです。 1は、具体的には、二重認証システム「ID、パスワード認証 → スマホに送信されたコードによる認証」→ログインという手順があるからです。 スマホに送信されたコードを自動化に組み込むのは、無理と考えて、1は手動になりました。 そうなのですね。 ありがとうございます。ご回答いただいてから、色々、自動メール送信について、調べているのですが、わからないのが現状です。 Gmailでの、自動メール送信の例は、見つかったのですが、すでに返信ボタンを押した所から、 ikapy様が、できないとなれば、諦めざるを得ないと考えております。 むしろ、1を自動化する方法を考えた方がいいかもしれないですね。 1の二重認証は、アプリによる認証コード取得もできるようですので。
kimukimu009

2020/01/18 05:18

↑上記、誤りですので、再送いたします。 ありがとうございます。 なぜ、こういう質問をしたかといいますと 1も自動化したかったのですが、できそうに無いため、そこまでは、手動にして、 2から、自動化したかったからです。 1は、具体的には、二重認証システム「ID、パスワード認証 → スマホに送信されたコードによる認証」→ログインという手順があるからです。 スマホに送信されたコードを自動化に組み込むのは、無理と考えて、1は手動になりました。 ikapy様が、できないとなれば、諦めざるを得ないと考えております。 むしろ、1を自動化する方法を考えた方がいいかもしれないですね。 1の二重認証は、アプリによる認証コード取得もできるようですので。
ikapy

2020/01/18 05:51

kimukimu009様 なるほど2段階認証でしたか。 私はやったことはありませんが、ちょっと考えてみました。 プロセス間通信を使えばできるのではないでしょうか。 プロセスAは、seleniumを操作するプロセス。プロセスBは、メールを受信するプロセスとします。 はじめにプロセスBを起動しておいて、メール受信を待機しておきます。 次に、プロセスAを起動してselenuimで順次処理していきます。第一段階のID、パスワード認証を行い、プロセスBからの応答待ち状態に入ります。 プロセスBにはそのうちメールが届くでしょうから、そのメールを解析し第二段階のコードをプロセスAにポストします。 そうすれば、プロセスAは第二段階のコードを得て後続の処理を行えるのではないでしょうか。 結構、コードを組まないといけないと思いますが、pythonでできるような気がします。 参考になれば。
kimukimu009

2020/01/19 10:40

なぜか、メール今気が付きました。 連絡が遅くなり大変、申し訳ございません。 プロセス間通信ですね。これが、できれば、大変おもしろいと思います。 一点、解決すべき問題があります。 プロセスBについて、「メールを受信できるか否か?です。」 現在の、二段階認証の二段階目は、 ・スマホの、SNSメッセージにおくられてくるコードを、入力する必要があるので、  このコードを、メールに転送ができればいけると思います。  (自動転送などをさがしていはいるのですが、なにかよい、転送方法はありますか?) よろしくお願いいたします。
ikapy

2020/01/19 11:09

メールの受信プロトコルにPOPとIMAPがあるのはご存じと思いますが、IMAPプロトコルを使った受信プログラムは作った事はありませんが、POPプロトコルを使っての受信プログラムは作った事があります。 多分、スマホの受信はIMAPプロトコルだと思いますができるのではないかとおもいますよ。ネットで調べたら、「https://qiita.com/hujuu/items/b75f8492000483bc66aa」(【python】imaplibでGmailを読み取る)というのがありました。 SNSメッセージ(たとえばGmail)をスマホで受けず、seleniumを動かすPCで受信すれば良いのでは(もしかしてこの前提がなりたたない?)。 よろしく。
kimukimu009

2020/01/19 12:06

素晴らしいアイデアですね。 こちらが、やりたいことに置き換えた場合は、 「アマゾンからスマホに送信されてくる二段階認証のSNSメッセージを、スマホで受けず、seleniumを動かすPCで受信する」 になります。 上記の、「https://qiita.com/hujuu/items/b75f8492000483bc66aa」(【python】imaplibでGmailを読み取る」 は、「Gmailから設定した条件に応じたメールのタイトルと本文をテキストで抽出する」 ということだと思うのですが、アマゾンからのSMSを、seleniumを動かすPCで受信することが、 できるということですか? お手数をおかけしますが、よろしくお願いいたします。
ikapy

2020/01/19 12:16

SMS(ショートメッセージ)はわかりません。わたしはずっとSNSだと思ってました。
kimukimu009

2020/01/19 14:44

申し訳ありませんでした。 SMS(ショートメッセージ)でした。 いろいろ勉強させていただき、本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問