# #freeeサイトへログイン&CSVアップロード # import time import json from datetime import datetime, timedelta from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as ec # 設定ファイルからログイン情報を取得 login_info = json.load(open("login_info.json", "r", encoding="utf-8")) # ログインサイト名 site_name = "freee" # ログイン画面URL url_login = login_info[site_name]["url"] # ユーザー名とパスワードの指定 USER = login_info[site_name]["id"] PASS = login_info[site_name]["pass"] # chromeを起動する browser = webdriver.Chrome() # ログイン画面取得 browser.get(url_login) # 入力 e = browser.find_element_by_id("user_email") e.clear() e.send_keys(USER) e = browser.find_element_by_name("password") e.clear()e.send_keys(PASS) # ログイン button = browser.find_element_by_name("commit")button.click() # ページロード完了まで待機 time.sleep(3) #楽天APIに移動 c = browser.find_element_by_class_name("walletable___StyledA-sc-3etvmj-3") c.click() # ページロード完了まで待機 time.sleep(3) #明細アップロードに移動 c = browser.find_element_by_id("wtxns-upload") c.click() #ファイルを選択し入力 now = datetime.now() this_month_first_day = now.replace(day=1) last_month_last_day = this_month_first_day - timedelta(days=1) last_month_first_day = last_month_last_day.replace(day=1) from1 = str(last_month_first_day).replace('-','')[:8] to1 = str(last_month_last_day).replace('-','')[:8] #ファイルのあるフォルダを指定 browser.find_element_by_id("ofx").send_keys('ファイルのあるフォルダ\\' + from1 + '_'+ to1 + '.csv'); #次へをクリック c = browser.find_element_by_name("commit")c.click() # 処理終了 browser.quit()
コメント