SeleniumでWebスクレイピングしてみよ⑤
Python2年生 スクレイピングのしくみ 体験してわかる!会話でまなべる! [ 森 巧尚 ] 価格:2,420円 |
saisaikenken.hatenablog.com
↑↑↑こちらの続き↑↑↑
前記事の復習
①class属性から要素取得
②id属性から要素取得
③name属性から要素取得
from selenium import webdriver d = webdriver.Chrome(executable_path='/mnt/c/chromedriver_win32/chromedriver.exe') d.get('https://www.google.co.jp') elm_byclass = d.find_element_by_class_name('gb_f') #① elm_byid = d.find_element_by_id('gbqfbb') #② elm_byname = d.find_element_by_name('btnK') #③ d.quit()
click&send_keysしてみよ
クリック
要素.click()の形で要素をクリック。
d.find_element_by_class_name('gb_f').click()
テキスト入力
要素.send_keys(<入力したいテキスト>)の形でテキスト入力。
d.find_element_by_name('q').send_keys('saisaikenken hatena')
キー入力
要素.send_keys(<入力したいキー>)の形でテキスト入力。
Keysメソッドを使用するために「from selenium.webdriver.common.keys import Keys」を追記。
from selenium.webdriver.common.keys import Keys d.find_element_by_name('q').send_keys(Keys.ENTER)
キー一覧
・Enterキー:element.send_keys(Keys.ENTER)
・ALTキー(通常キーと組み合わせ):element.send_keys(Keys.ALT,"f")
→上記はALT+fキー押下時。第2引数に通常キーを指定
・←キー:element.send_keys(Keys.LEFT)
・→キー:element.send_keys(Keys.RIGHT)
・↑キー:element.send_keys(Keys.UP)
・↓キー:element.send_keys(Keys.DOWN)
・Ctrlキー(通常キーと組み合わせ):element.send_keys(Keys.CONTROL,"a")
→上記はCtrl+aキー押下時。第2引数に通常キーを指定
・Deleteキー:element.send_keys(Keys.DELETE)
・HOMEキー:element.send_keys(Keys.HOME)
・ENDキー:element.send_keys(Keys.END)
・ESCAPEキー:element.send_keys(Keys.ESCAPE)
・イコール(=)入力:element.send_keys(Keys.EQUALS)
・F1キー:element.send_keys(Keys.F1)
・シフトキー(通常キーと組み合わせ):element.send_keys(Keys.SHIFT,"abc"));
→上記はShift+"abc"押下時。第2引数に通常キーを指定
・ページダウンキー:element.send_keys(Keys.PAGE_DOWN)
・ページアップキー:element.send_keys(Keys.PAGE_UP)
・スペースキー:element.send_keys(Keys.SPACE)
・リターンキー:element.send_keys(Keys.RETURN)
・タブキー:element.send_keys(Keys.TAB)
コードまとめ
from selenium import webdriver from selenium.webdriver.common.keys import Keys d = webdriver.Chrome(executable_path='/mnt/c/chromedriver_win32/chromedriver.exe') d.get('https://www.google.co.jp') d.find_element_by_name('q').send_keys('saisaikenken hatena') d.find_element_by_name('q').send_keys(Keys.ENTER) d.quit()
実行結果
自動でググれた。(google検索ができた。)
次回からは、応用編として、ブラウザいろいろ操作してみよ。