import pyautogui import pyperclip import sys def kakunin_kansuu(bunsyou): kaitou = pyautogui.confirm(bunsyou) if kaitou == 'Cancel': pyautogui.alert('プログラムを中断します。') sys.exit() #プログラムを開始するかどうか確認メッセージ kakunin_kansuu('Yahooの路線情報でデータを整理するプログラムです。起動しますか?') #事前処理を促す確認メッセージ kakunin_kansuu('Yahooの路線情報で検索し、その結果を全てコピーしてOKを押してください。') #コピーしたテキストデータをtekisutoに代入。 tekisuto = pyperclip.paste() #tekisutoを改行ごとに分割してlineに代入。 risuto = tekisuto.splitlines() #結果を入れる変数を初期化 kekka = 'ルート\t出発駅\t到着駅\t料金\t経路\n' ruuto = '' syuppatu = '' toucyaku = '' ryoukin = '' keiro = '' #以下繰り返し作業 #ルート1と書かれた行まで移動 for gyou in risuto: if gyou.startswith('ルート'): ruuto = gyou elif '[priic]IC優先:' in gyou: kokokara = gyou.find('[priic]IC優先:')+12 kokomade = gyou.find('円') ryoukin = gyou[kokokara:kokomade] elif '[dep]\t' in gyou: kokokara = gyou.find('[dep]\t')+6 kokomade = gyou.find(' ') syuppatu = gyou[kokokara:kokomade] elif '\t[train]\t' in gyou: kokokara = gyou.find('\t[train]\t')+9 kokomade = gyou.find(' ') keiro = keiro + '→ ' + gyou[kokokara:kokomade] + '駅 ' elif gyou.startswith('[train]'): kokokara = gyou.find('[train]')+7 keiro = keiro + gyou[kokokara:] + ' ' elif gyou.startswith('[walk]'): kokokara = gyou.find('[walk]')+6 keiro = keiro + gyou[kokokara:] + ' ' elif gyou.endswith('円'): keiro = keiro + gyou + ' ' elif gyou.startswith('[arr]\t'): kokokara = gyou.find('[arr]\t')+6 kokomade = gyou.find(' ') toucyaku = gyou[kokokara:kokomade] kekka = kekka + ruuto + '\t' + syuppatu +'\t' + toucyaku +'\t' + ryoukin +'\t' + keiro +'\n' ruuto = '' syuppatu = '' toucyaku = '' ryoukin = '' keiro = '' pyperclip.copy(kekka) pyautogui.alert('結果\n'+kekka) #プログラムを終了 pyautogui.alert('プログラムを終了します。') sys.exit()