# 使用Python的requests库获取天气信息的小程序


背景介绍

在现代编程竞赛或编程项目中,用户常需要从网络获取特定信息。Python的requests库提供了高效的HTTP请求能力,支持GET/POST请求,非常适合实现此类任务。本程序通过接收用户输入的日期和时间,发送GET请求获取天气数据,并以简洁形式输出结果,展示了如何利用这一库实现基础功能。

思路分析

  1. 请求方式
    使用requests.get()发送GET请求,将参数date-time转换为日期对象datetime.strptime()进行解析。
  2. 响应处理
    从响应数据中提取天气信息,例如通过解析JSON数据获取temperature, humidity等字段。
  3. 输出格式
    使用print函数输出结果,确保输出简洁明了,避免多行文本格式。

代码实现

import requests
import datetime

# 输入:2023-10-10 15:00  
# 输出:天气信息(示例:晴)  

def get_weather_info(date_time_str):
    # 将日期时间格式转换为对象  
    date = datetime.datetime.strptime(date_time_str, "%Y-%m-%d %H:%M")
    # 发送GET请求  
    response = requests.get(f"http://example.com/weather/{date_time_str}", params={"date": date.strftime("%Y-%m-%d")})
    # 处理响应数据  
    try:  
        data = response.json()  
        result = f"天气信息:{data['description']}(温度:{data['temperature']}℃)"  
        print(result)  
    except Exception as e:  
        print(f"请求失败: {str(e)}")  

# 示例调用  
get_weather_info("2023-10-10 15:00")

总结

本程序通过使用Python的requests库,实现了接收日期时间输入、发送HTTP请求、解析响应数据并输出结果的功能。其特点包括:
1. 功能简单:仅实现基本的天气信息获取功能,无需复杂框架。
2. 可运行性:可直接在本地环境中运行,无需依赖第三方库。
3. 简洁输出:通过print函数输出格式,确保结果清晰易读。

该项目展示了如何利用HTTP请求实现基础编程任务,体现了Python在网络编程领域的强大能力。