かなりニッチな自分用のスクリプトです。VISAカードで明細をCSVでダウンロードできます。
ある一つの項目を月ごとに見たいときがあります、そういうときのみ使えるスクリプトです。
ファイル名は202111.csvというdefault形式で、ひとつのフォルダに入れます。
check_itemが調べる項目で、この文字を含むものを抽出します。1つずつしか設定できません。
抽出結果を出力するときはto_csvのコメントアウトを外します。
import datetime
import pandas as pd
from dateutil.relativedelta import relativedelta
directory = "~/path/to/directory"
check_item = "大阪ガス"
# check_item = "関西電力"
# check_item = "水道"
start_year = 2017
start_month = 6
end_year = 2021
end_month = 12
date = datetime.datetime(start_year, start_month, 1)
date_end = datetime.datetime(end_year, end_month, 1)
data_out = []
while date <= date_end:
filename = "{0:%Y%m}.csv".format(date)
check_file_path = directory + "/" + filename
try:
df = pd.read_csv(check_file_path, encoding="sjis-2004")
except:
print(filename + " not exist.")
for i in range(len(df)):
if check_item in str(df.iloc[i].name[1]):
data_out.append(df.iloc[i].name[0:3])
date += relativedelta(months=1)
df_out = pd.DataFrame(data_out)
print(df_out)
# df_d_out.to_csv("test.csv", index =None)
0 件のコメント:
コメントを投稿