# 网络请求示例:获取用户关键词并返回结构化天气数据


背景介绍

本项目旨在利用Python的requests库实现一个小型网络请求示例,能够从用户输入的关键词中获取对应的城市天气信息。通过构造GET请求,接收用户输入的城市名称,然后解析返回的JSON数据,最终输出结构化结果。项目要求本地运行,无需依赖外部服务,强调网络请求的核心逻辑。

思路分析

  1. 请求结构:需要构造一个GET请求,请求参数为{“city”: “输入关键词”},URL示例为`https://api.example.com/weather`,用于模拟真实天气数据。

  2. 数据解析:接收的响应数据结构化为JSON对象,包含城市名称、温度和湿度信息。需要使用json.loads()解析响应内容。

  3. 本地运行环境:项目要求开发者在本地环境运行,可以通过虚拟环境(如venv)管理依赖,确保代码可直接部署。

代码实现

import requests

def get_weather_info(keyword):
    url = f"https://api.example.com/weather?city={keyword}"
    headers = {
        'Content-Type': 'application/json'
    }
    response = requests.get(url, headers=headers)
    data = response.json()

    return {
        "city": data.get("city"),
        "temperature": data.get("temperature"),
        "humidity": data.get("humidity")
    }

# 示例输入
user_input = input("请输入城市名称:")
result = get_weather_info(user_input)

print("获取到的天气数据:")
for key, value in result.items():
    print(f"{key}: {value}")

总结

本项目通过网络请求的核心知识,实现了从用户输入关键词到天气数据结构化输出的功能。代码实现了数据处理和网络调用的核心逻辑,确保响应数据的正确解析和输出。学习到的关键点包括:网络请求的参数配置、响应数据的解析方法以及本地环境的运行便捷性。该项目为开发者提供了实践网络请求的基础经验,帮助其掌握数据处理与网络调用的核心技能。


发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注