fix: use explicit encoding="utf-8" for all file I/O so Windows users avoid cp1252 crashes (#543, #550, #576)

This commit is contained in:
Yijia-Xiao
2026-04-25 07:25:32 +00:00
parent fa4d01c23a
commit 872b063e69
4 changed files with 20 additions and 22 deletions
+2 -2
View File
@@ -67,7 +67,7 @@ def load_ohlcv(symbol: str, curr_date: str) -> pd.DataFrame:
)
if os.path.exists(data_file):
data = pd.read_csv(data_file, on_bad_lines="skip")
data = pd.read_csv(data_file, on_bad_lines="skip", encoding="utf-8")
else:
data = yf_retry(lambda: yf.download(
symbol,
@@ -78,7 +78,7 @@ def load_ohlcv(symbol: str, curr_date: str) -> pd.DataFrame:
auto_adjust=True,
))
data = data.reset_index()
data.to_csv(data_file, index=False)
data.to_csv(data_file, index=False, encoding="utf-8")
data = _clean_dataframe(data)
+1 -1
View File
@@ -8,7 +8,7 @@ SavePathType = Annotated[str, "File path to save data. If None, data is not save
def save_output(data: pd.DataFrame, tag: str, save_path: SavePathType = None) -> None:
if save_path:
data.to_csv(save_path)
data.to_csv(save_path, encoding="utf-8")
print(f"{tag} saved to {save_path}")