From 0747b86fd05773f1f0761222fc771ec1d65860b2 Mon Sep 17 00:00:00 2001 From: wlt233 <1486185683@qq.com> Date: Tue, 22 Jul 2025 11:16:42 +0800 Subject: [PATCH] fix bug: result dedup --- server.py | 1 - src/twi_parser.py | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/server.py b/server.py index 6415781..deec7c3 100644 --- a/server.py +++ b/server.py @@ -75,7 +75,6 @@ async def tweet_detail(): try: data = await get_detail(tweet_id) data = parse_detail(data) - data = list({ t["rest_id"]: t for t in data }.values()) return jsonify(data) except Exception as e: logger.error(f"Tweet detail api error: {e}") diff --git a/src/twi_parser.py b/src/twi_parser.py index 985c3ef..09ef416 100644 --- a/src/twi_parser.py +++ b/src/twi_parser.py @@ -16,6 +16,7 @@ def parse_timeline(data): logger.error(f"Error when parsing entry: {e} {e.args}") logger.error(f"\n{traceback.format_exc()}") logger.error(f"\n{pformat(entry)}") + result = list({ t["rest_id"]: t for t in result }.values()) result.sort(key=lambda x: x["timestamp"], reverse=True) return result @@ -191,5 +192,6 @@ def parse_detail(data): logger.error(f"\n{traceback.format_exc()}") logger.error(f"\n{pformat(entry)}") result = [r for r in result if not r["screen_name"] in ["premium"]] + result = list({ t["rest_id"]: t for t in result }.values()) result.sort(key=lambda x: x["timestamp"]) return result \ No newline at end of file