def initial_load(self, csv, table_name): """ テーブルを作成して、CSV データを初期ロードをします """ results = pd.read_csv(Config.get_datastore_path(csv), index_col=0) results.to_sql(table_name, self.db.engine, if_exists="replace") self.load_counts[csv] = len(results.index)
def reset_load_file(self, filename): """ CSV ロードファイルを削除します """ load_path = Config.get_datastore_path(filename) if os.path.exists(load_path): os.remove(load_path) self.load_counts[filename] = 0
def test_get_path(): assert Config.get_datastore_path("choka.csv") assert Config.get_download_path("choka_daikoku_2021_04_001.html") assert Config.test_resource("daikoku1.html") assert Config.get_url("daikoku") assert Config.get_download_file("daikoku", 2021, 4) assert Config.get_db_path() assert Config.get_config_path("config.toml")
def export_data(self, df, filename, format='csv'): """ 取得した釣果情報データフレームを CSV に保存します """ """ 日付列のCSV変換で、フォーマットを固定して変換""" df['Date'] = df['Date'].apply(lambda x: x.strftime('%Y-%m-%d')) export_path = Config.get_datastore_path(filename) df.to_csv(export_path)
def append_load(self, csv, table_name, index_columns): """ テーブルに全 CSV レコードを登録します、既設のレコードは更新します """ results = pd.read_csv(Config.get_datastore_path(csv), index_col=0) for result in results.to_dict(orient='records'): self.upsert_row(table_name, index_columns, result) self.load_counts[csv] = len(results.index) return self