kakashi-blog・カカシブログ・

Python備忘録を書きドローンやバイクなど好きな事で生きて行こうとしているブログ

python プログラミング

Python備忘録 selenium 自動ログイン編

投稿日:2019年11月28日 更新日:

前回はブラウザのスクロールまで行いました

今回はブラウザのログイン画面から自動ログインに挑戦

 


退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング

 

◇ソースコード

 

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

username=('id')#ID or メール or 携帯番号
password=('password')#パスワード

browser = webdriver.Chrome()
browser.get('https://login.yahoo.co.jp/config/login?.src=www&.done=https://www.yahoo.co.jp')

time.sleep(10)

user_name=browser.find_element_by_id('username')
user_name.send_keys(username)
btn=browser.find_element_by_id('btnNext')
btn.click()

time.sleep(5)

psw=browser.find_element_by_id('passwd')
psw.send_keys(password)
logbt=browser.find_element_by_id('btnSubmit')
logbt.click()

 

ソースコードのなかみを説明します

 

1、必要なライブラリのインポート

 

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

 

始めの2行はselenium、ブラウザの操縦に使う

timeは、確実にプログラムを実行するために待ち時間を作るために使用

プログラムで動いているので、ブラウザを完全に読み込んでいなくても次の動作に進んでしまう為、エラーになってしまうことがある。

人が操作していれば入力出来るまで待ったり、ボタンが現れたら押したりするが、それを単純なプログラムで進めるめにtimeを使用する

 

2、IDとパスワードを変数に格納

 

username=('id')#ID or メール or 携帯番号
password=('password')#パスワード

 

usename変数にログインID or メール or 携帯番号を格納

password変数にパスワードを格納

 

3、ブラウザを開く

 

browser = webdriver.Chrome()
browser.get('https://login.yahoo.co.jp/config/login?.src=www&.done=https://www.yahoo.co.jp')

 

今回はchromeでyahooのログインページを開きます

 

 

 

4、ブラウザが完全に開くまでの時間待つ

 

time.sleep(10)

 

ここでは10秒待ちます

sleepの引数が待ち時間の秒数になります

 

 

 

 

5、タグを指定して操作

 

user_name=browser.find_element_by_id('username')
user_name.send_keys(username)
btn=browser.find_element_by_id('btnNext')
btn.click()

 

browser.find_element_by_id(‘username’)

id (‘ ‘) 👈この中に操作したいタグを探して入れます

 

・探し方

IDを入力したいブラウザの画面を開いて、WindowsならF12を押して開発者ツールを開きます

 

 

HTMLのプログラムにカーソルを合わせていき、操作したい場所が青くなっていたらどんどん階層を下っていく

最終的に操作したい場所だけが青くなるところまで階層を下る

 

 

この”username”を id (‘ ‘) のなかに入れます

send_keys()で引数をキーボード入力できます

 

テキスト入力したらボタンを押します

今度はボタンのタグを探します

 

 

このボタンのタグは”btnNext”

click()でクリックしてくれます

 

ここまででテキスト入力、ボタンクリック

これでログインに必要な動作が出来るようになりました

パスワードはこれと同じことをすればログインにたどり着きます。

 

以上seleniumによるログインのやり方でした

 

―関連記事―

selenium ブラウザスクロール編はここから👈

Tkinter編

-python, プログラミング
-, ,

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

Python備忘録 Tkinter編① 

Tkinterとは キーボード操作だけでなく、 マウスを使用した操作が可能なウィンドウやボタン、入力欄など GUI を比較的簡単に 作る事が出来るライブラリ   退屈なことはPythonにやらせよう …

子供がズルをするので計算カードをpython(Tkinter)で作った

うちの小学1年生の子の宿題に「計算カード」があります。 学校からは、「時間を計ってやりなさい」と言われているようです。 もちろん計算なんかせず、めくる事が目的になって、 どれだけ早くめくれるか。みたい …

pythonのtkinterを使って、あまりのある割り算アプリを作ってみた

小3の娘に、あまりのある割り算の問題を出してほしいとたのまれたので、Windowsで動くアプリを作ってみました。 退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミ …

Amazonのウェブスクレイピングが出来ない

  pythonでプログラミングを勉強(というより趣味で遊んでいる)しています。     BeautifulSoupを使用して、ウェブスクレイピングがある程度出来るようになってきた。そこでAmazon …

Excel VBAを使用して、セルの中の図形をコピーして別のセルにペースト

  実はVBAは使用せずに、関数だけでコピペをしようと思いましたが、なかなか上手くいきませんでした。 なのであきらめてVBAで作ります。   目的   順序がバラバラのセルに番号をふって、別のシートに …