Skip to content

Commit 04d2b2f

Browse files
committed
fix(review-feedback-1278): address latest review comments
1 parent f477e09 commit 04d2b2f

2 files changed

Lines changed: 10 additions & 7 deletions

File tree

data_provider/akshare_fetcher.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1847,19 +1847,19 @@ def get_hot_stocks(self, n: int = 10) -> Optional[List[Dict[str, Any]]]:
18471847
import akshare as ak
18481848

18491849
fetch_attempts = (
1850-
lambda top_n: self._get_eastmoney_hot_stocks(ak, top_n),
1851-
lambda top_n: self._get_eastmoney_hot_up_stocks(ak, top_n),
1852-
lambda top_n: self._get_xueqiu_hot_stocks(ak, top_n),
1850+
("东方财富人气榜", lambda top_n: self._get_eastmoney_hot_stocks(ak, top_n)),
1851+
("东方财富飙升榜", lambda top_n: self._get_eastmoney_hot_up_stocks(ak, top_n)),
1852+
("雪球关注榜", lambda top_n: self._get_xueqiu_hot_stocks(ak, top_n)),
18531853
)
18541854
last_error = ""
1855-
for fetch in fetch_attempts:
1855+
for source, fetch in fetch_attempts:
18561856
try:
18571857
rows = fetch(n)
18581858
if rows:
18591859
return rows[:n]
18601860
except Exception as e:
1861-
last_error = str(e)
1862-
logger.debug("[Akshare] 人气股候选源失败: %s", e)
1861+
last_error = f"{source}: {e}"
1862+
logger.debug("[Akshare] 人气股候选源失败 source=%s: %s", source, e)
18631863
if last_error:
18641864
logger.warning("[Akshare] 获取人气股全部候选源失败: %s", last_error)
18651865
return None
@@ -1979,7 +1979,7 @@ def get_limit_up_pool(
19791979
'turnover_rate': self._safe_float(row.get('换手率')),
19801980
'seal_amount': self._safe_float(row.get('封板资金')),
19811981
'first_limit_time': str(row.get('首次封板时间', '')).strip(),
1982-
'last_limit_time': str(row.get('最后封板时间', '')).strip(),
1982+
'last_limit_time': self._normalize_limit_time_value(row.get('最后封板时间')),
19831983
'break_count': self._safe_int(row.get('炸板次数')),
19841984
'limit_stat': str(row.get('涨停统计', '')).strip(),
19851985
'consecutive_boards': self._safe_int(row.get('连板数')),

tests/test_akshare_realtime_logging.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,8 @@ def test_tencent_realtime_success_logs_endpoint(caplog, monkeypatch, akshare_fet
154154

155155

156156
def test_hot_stocks_uses_eastmoney_hot_ranking_when_available(monkeypatch, akshare_fetcher):
157+
fake_akshare = SimpleNamespace()
158+
monkeypatch.setitem(sys.modules, "akshare", fake_akshare)
157159
monkeypatch.setattr(
158160
akshare_fetcher,
159161
"_get_eastmoney_hot_stocks",
@@ -232,3 +234,4 @@ def test_limit_up_pool_zero_pads_first_seal_times_before_sorting(monkeypatch, ak
232234

233235
assert [row["code"] for row in result] == ["000001", "000003", "000002"]
234236
assert result[0]["first_limit_time"] == "092500"
237+
assert result[0]["last_limit_time"] == "093000"

0 commit comments

Comments
 (0)