From 9c145da6df959b4b7c1bf252ac5337ede8dd6d02 Mon Sep 17 00:00:00 2001
From: "2569718930@qq.com" <2569718930@qq.com>
Date: Sun, 8 Feb 2026 18:24:59 +0800
Subject: [PATCH] Please provide the diff for
`e:\web\PolyWeather\bot_listener.py` to generate an accurate commit message.
---
bot_listener.py | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/bot_listener.py b/bot_listener.py
index 8ae2ee3a..bbf905d8 100644
--- a/bot_listener.py
+++ b/bot_listener.py
@@ -278,9 +278,10 @@ def start_bot():
elif mgm_high is not None:
comp_str = f" (MGM: {mgm_high})"
- msg_lines.append(f"\nš ä»å¤©: {today_t}{temp_symbol}{comp_str}")
+ msg_lines.append(f"\nš é¢ę„ (Open-Meteo)")
+ msg_lines.append(f"š ä»å¤©: {today_t}{temp_symbol}{comp_str}")
- # ęå天 (ę°“å¹³ęåęęē®å蔨)
+ # ęå天
if len(dates) > 1:
future_forecasts = []
for d, t in zip(dates[1:], max_temps[1:]):
@@ -292,6 +293,8 @@ def start_bot():
cur_temp = metar.get("current", {}).get("temp") if metar else mgm.get("current", {}).get("temp")
max_p = metar.get("current", {}).get("max_temp_so_far") if metar else None
obs_t_str = "N/A"
+ main_source = "METAR" if metar else "MGM"
+
if metar:
obs_t = metar.get("observation_time", "")
obs_t_str = obs_t.split(" ")[1][:5] if " " in obs_t else obs_t[:5]
@@ -305,7 +308,7 @@ def start_bot():
m_time = m_time.split(" ")[1][:5]
obs_t_str = m_time
- msg_lines.append(f"\nāļø å®ęµ: {cur_temp}{temp_symbol}" + (f" (ęé«: {max_p}{temp_symbol})" if max_p else "") + f" | {obs_t_str}")
+ msg_lines.append(f"\nāļø å®ęµ ({main_source}): {cur_temp}{temp_symbol}" + (f" (ęé«: {max_p}{temp_symbol})" if max_p else "") + f" | {obs_t_str}")
if mgm:
m_c = mgm.get("current", {})
@@ -316,8 +319,8 @@ def start_bot():
dirs = ["å", "äøå", "äø", "äøå", "å", "脿å", "脿", "脿å"]
dir_str = dirs[int((float(wind_dir) + 22.5) % 360 / 45)] + "é£ "
- msg_lines.append(f" š”ļø ä½ę: {m_c.get('feels_like')}°C | š§ {m_c.get('humidity')}% | š§ļø {m_c.get('rain_24h') or 0}mm")
- msg_lines.append(f" š¬ļø {dir_str}{wind_dir}° ({m_c.get('wind_speed_ms')} m/s)")
+ msg_lines.append(f" [MGM] š”ļø ä½ę: {m_c.get('feels_like')}°C | š§ {m_c.get('humidity')}%")
+ msg_lines.append(f" [MGM] š¬ļø {dir_str}{wind_dir}° ({m_c.get('wind_speed_ms')} m/s) | š§ļø {m_c.get('rain_24h') or 0}mm")
if metar:
m_c = metar.get("current", {})
@@ -332,11 +335,12 @@ def start_bot():
main = clouds[-1]
cloud_desc = f"āļø {c_map.get(main.get('cover'), main.get('cover'))}"
+ prefix = "[METAR]" if mgm else " "
if not mgm:
- msg_lines.append(f" šØ {wind or 0}kt ({wind_dir or 0}°) | šļø {vis or 10}mi")
+ msg_lines.append(f" {prefix} šØ {wind or 0}kt ({wind_dir or 0}°) | šļø {vis or 10}mi")
if cloud_desc:
- msg_lines.append(f" {cloud_desc} | šļø {vis or 10}mi")
+ msg_lines.append(f" {prefix} {cloud_desc} | šļø {vis or 10}mi | šØ {wind or 0}kt")
# --- 5. ęåæåę ---
trend_insights = analyze_weather_trend(weather_data, temp_symbol)