Files
claude-code/simple_weather.py
T
abel533andCopilot 9f4023bdf0 refactor: apply BaseSlashCommand to all 54 command implementations
- implements SlashCommand -> extends BaseSlashCommand (all 54 files)
- Replace CommandUtils.parseArgs/args null checks -> args(args)
- Replace agentLoop null checks -> requireAgentLoop(context)/noSession()
- Replace context.agentLoop().getToolContext() -> toolCtx(context)
- Replace CommandUtils.success/error/header/subtitle/warning/info -> instance methods
- Remove unused CommandUtils/AnsiStyle imports where applicable
- 87 tests passing, zero compilation errors

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-05 13:16:55 +08:00

69 lines
2.0 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env python3
"""
简单的天气查询脚本
使用OpenWeatherMap API
"""
import requests
import sys
def get_weather(api_key, city="Beijing", units="metric"):
"""
获取指定城市的天气
"""
url = "http://api.openweathermap.org/data/2.5/weather"
params = {
"q": city,
"appid": api_key,
"units": units,
"lang": "zh_cn"
}
try:
response = requests.get(url, params=params, timeout=10)
data = response.json()
if data.get("cod") != 200:
print(f"错误: {data.get('message', '未知错误')}")
return None
return data
except Exception as e:
print(f"请求失败: {e}")
return None
def main():
# 请在这里输入您的API密钥
API_KEY = "YOUR_API_KEY_HERE"
if API_KEY == "YOUR_API_KEY_HERE":
print("请先获取OpenWeatherMap API密钥:")
print("1. 访问 https://openweathermap.org/api")
print("2. 注册免费账户")
print("3. 获取API密钥并替换代码中的 'YOUR_API_KEY_HERE'")
print("\n免费套餐:每天60次调用")
return
# 查询城市(可以修改为您所在的城市)
city = input("请输入城市名称(英文,如 Beijing, Shanghai, New York: ").strip()
if not city:
city = "Beijing"
print(f"\n正在查询 {city} 的天气...")
weather_data = get_weather(API_KEY, city)
if weather_data:
print(f"\n=== {weather_data['name']} 天气 ===")
print(f"温度: {weather_data['main']['temp']}°C")
print(f"体感温度: {weather_data['main']['feels_like']}°C")
print(f"天气: {weather_data['weather'][0]['description']}")
print(f"湿度: {weather_data['main']['humidity']}%")
print(f"风速: {weather_data['wind']['speed']} m/s")
print(f"气压: {weather_data['main']['pressure']} hPa")
else:
print("无法获取天气数据")
if __name__ == "__main__":
main()