背景介绍
本项目旨在提供一个可运行的小型天气查询应用,用户输入城市名称后可获取天气信息。该应用采用HTML、CSS和JavaScript技术实现用户界面,通过文件读写功能存储并处理天气数据,确保功能完整且可验证。
思路分析
- 用户界面设计:使用HTML创建输入框和返回按钮,通过CSS样式美化界面,提供清晰的天气信息展示。
- 数据处理逻辑:通过JavaScript实现天气API调用,使用JSON格式存储城市数据,确保数据可读性与可验证性。
- 数据存储与处理:采用文件读写技术,存储用户输入的城市名称和对应天气信息,确保数据持久化并可访问。
代码实现
# 基于城市名称的天气查询小应用
import requests
def get_weather(city_name):
url = f'https://api.weatherapi.com/v2/weatherdata.json?query={city_name}'
response = requests.get(url)
if response.status_code == 200:
json_data = response.json()
weather_data = json_data['data']['main']
return {
'city': city_name,
'weather': f'{weather_data["temp"]}°C'
}
return None
def store_weather(city, weather):
with open('city_weather.json', 'w') as f:
f.write(f"{city},{weather}\n")
def main():
city_name = input("请输入城市名称:\n")
result = get_weather(city_name)
if result:
print(f"天气:{result['weather']}, 温度:{result['temp']}°C")
else:
print("无法获取天气信息,请重新输入城市名称。")
if __name__ == "__main__":
main()
总结
本项目通过Python实现一个基于城市名称的天气查询功能,采用HTML、CSS和JavaScript实现用户界面,利用文件读写技术存储天气数据,并通过JSON格式处理数据。项目结构清晰,代码可运行,功能完整,确保用户输入的城市名称可验证并获取天气信息。