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)