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

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

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

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

selenium

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

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

Q&A

3回答

992閲覧

SeleniumでGoogleアカウントに自動でログインする方法

myaow

総合スコア16

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

selenium

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

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

0グッド

1クリップ

投稿2018/08/13 03:47

編集2022/01/12 10:55

SeleniumでGoogleのアカウントに自動ログインしたいです。
Aというサイトがあり、そのサイトはGoogleアカウントと連携してログインできる仕様になっています。
自動でブラウザを立ち上げるとシークレットモードのように都度ログインしなければならいのでseleniumにログインのコードを書かなければいけないのですが、画像のように「メールアドレスまたは電話番号」のフォームにカーソルを置いて、devtoolsでid="identifierId"を確認し、selenium.rbでdriver.find_element(:id, 'identifierId').send_keys 'メールアドレス'と入力し、実行したのですが、
イメージ説明
下記のようなエラーが出て、うまく入力ができません。
イメージ説明
それ以前の操作は問題ないのですが、コードが間違っているのでしょうか。

※追記
ブログ(https://benzenetarou.hatenablog.com/entry/selenium/twitter/login)を参考にxpathを取得してコードを書き換えてみたのですがやはりだめでした。

driver.find_element(:xpath, '//*[@id="identifierId"]').send_keys 'メールアドレス' #IDの入力 time.sleep(1.5) driver.find_element(:xpath, '//*[@id="identifierNext"]').click #次へボタンのクリック

イメージ説明

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

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

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

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

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

guest

回答3

0

回答になっていないかと思いますが、、、
お試しで、ChromeにてKatalon Recoderを取り入れてみてはいかがでしょうか。
IDE形式で、まずは実際の入力したい箇所を手打ちで実装した後
Exportタブでソースコードとして出力する事が出来ます。
出力言語にRubyがありましたので、こちらでIDのElement要素を取得する
ソースコードを取得出来るかもしれません。

投稿2018/08/24 08:41

reraNine

総合スコア124

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

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

0

driver.find_element_by_name は試されましたか?

投稿2018/08/13 14:16

chun

総合スコア324

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

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

0

idではなくclassで指定してみてはいかがでしょうか。

投稿2018/08/13 06:49

Koyyyyyy

総合スコア55

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

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

myaow

2018/08/13 07:25

回答ありがとうございます。 class名「whsOnd zHQkBf」で実行してみたのですが、compound class names not permitted(複数の単語が使われているクラス名は許可されていません(半角スペースが原因?))とエラー表示されました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問