# 小项目:API数据抓取与JSON输出实现


背景介绍

该项目旨在帮助用户通过命令行输入API地址和参数,使用Python的requests库进行HTTP请求,获取数据并以JSON格式展示结果。项目无需依赖复杂框架,仅需基础库即可实现,符合小型项目的规范要求。

思路分析

  1. 输入参数处理
    用户输入参数通过命令行输入,需读取URLnameage。使用input()函数读取参数,确保用户输入的格式正确。

  2. 请求构造
    参数作为字典传递给requests.get(), 带参数URL = 'http://api.example.com/data'。确保requests.get()的请求头和参数正确。

  3. 响应解析
    接收响应后,将字典形式的响应转换为JSON格式,使用json.dumps()转换为字符串输出。

  4. 结果展示
    显示结果时,检查响应中的字段是否存在,若存在则以JSON格式输出结果,否则提示错误信息。

代码实现

import requests

def fetch_data(url, params):
    try:
        response = requests.get(url, params=params)
        response.raise_for_status()  # 检查请求失败
        return response.json()
    except requests.RequestException as e:
        print(f"请求失败: {e}")

# 示例输入
url = input("请输入API地址: http://api.example.com/data?name=John&age=25\n")
name = input("请输入参数: name: ")
age = input("请输入参数: age: ")

# 构造请求参数
params = {
    'name': name,
    'age': int(age)
}

# 获取数据并输出结果
data = fetch_data(url, params)
print(f"{'status' if 'status' in data else 'error'}: {data}")

总结

该项目通过基础库实现了HTTP请求与JSON输出的核心功能。代码的可运行性依赖于输入参数的正确处理和requests.get()的异常处理机制。项目简洁且易于扩展,适用于小型项目的快速实现需求。


发表回复

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