原有逻辑实现
原有代码:import akshare as ak
import pandas as pd
import time
import sys
from datetime import datetime
import os
def update_stock_details(output_folder, symbol):
output_file = os.path.join(output_folder, f'stock_details_{
symbol}.csv')
try:
existing_data = pd.read_csv(output_file)
except FileNotFoundError:
existing_data = pd.DataFrame()
while True:
try :
stock_intraday_em_df = ak.stock_intraday_em(symbol=symbol)
stock_intraday_em_df.replace({
'买盘': 1,'中性盘': 0, '卖盘': -1}, inplace=True)
if not stock_intraday_em_df.equals(existing_data):
new_big_count_data = stock_intraday_em_df[stock_intraday_em_df['手数'] > 1000]
new_big_count_data = new_big_count_data[~new_big_count_data.index.isin(existing_data.index)]
if not new_big_count_data.empty:
print(new_big_count_data)
existing_data = pd.concat([existing_data, new_big_count_data])
stock_intraday_em_df.to_csv(output_file, index=False, encoding="utf-8")
else:
print("数据未变化,不更新文件。")
time.sleep(6)
except:
print(f"Failed to fetch data for {
symbol}. Retrying in 5 seconds...")
time.sleep(10)