プログラミング

pythonで航空券検索自動化(JAL)

更新日:

航空券予約のときのわずらわしい入力作業を自動化してみました。今回使用するブラウザはgoogle chromeで行う。

chromedriver-binaryをインストールする

Chromeのバージョン番号とChromeDriverのバージョン番号を比較し、Chromeのバージョンに近い数値のChromeDriverのバージョン番号を探してください。

参考

[selenium向け] ChromeDriverをpipでインストールする方法(パス通し不要、バージョン指定可能)

 

作成

下記の「出発地」「到着地」、「出発日時」、「到着日時」を都合に合わせて書き換える。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options
import chromedriver_binary

# ブラウザのサイズ指定
options = Options()
options.add_argument("--window-size=1320,1000")
chrome = webdriver.Chrome(options=options)

web_str = "https://www.jal.co.jp/jp/ja/"

chrome.get(web_str)

# 予約画面表示
element = chrome.find_element_by_class_name('reservation-openbtn.JS_moduleOpen.JS_moduleOpenBtn')
element.click()
# 出発地
element = chrome.find_element_by_id('JS_domIntl_departureAirport')
element.send_keys(Keys.BACKSPACE)
element.send_keys(Keys.SPACE)
element.send_keys('出発地')
element.send_keys(Keys.ENTER)
# 到着地
element = chrome.find_element_by_id('JS_domIntl_arrivalAirport')
element.send_keys(Keys.BACKSPACE)
element.send_keys(Keys.SPACE)
element.send_keys('到着地')
element.send_keys(Keys.ENTER)
# カレンダー画面表示
element = chrome.find_element_by_id('JS_domIntl_domLbDepDate')
element.send_keys(Keys.ENTER)
# 出発日付
depday = chrome.find_element_by_id('出発日付')
depday.click()
# 到着日付
arrday = chrome.find_element_by_id('到着日付')
arrday.click()
# 日付決定
element = chrome.find_element_by_id('JS_calConfirmButton')
element.click()

# 検索開始
element = chrome.find_element_by_id('JS_domIntl_submitBtn')
element.click()

input()

-プログラミング

Copyright© Yoko-News , 2024 All Rights Reserved Powered by STINGER.