# 网络请求示例:GET请求实现与HTML响应输出


随着项目需求的提升,我们逐步实现一个小型网络请求框架。本示例演示如何接收API地址和参数,通过GET请求获取响应内容,并将其以HTML页面形式输出。

一、技术实现思路

  1. 输入处理
    通过命令行输入API地址和参数,例如:

    url https://api.example.com/data
    key=secret
    

    程序将这些参数存储为变量,用于后续请求处理。

  2. HTTP请求
    使用requests.get()发送GET请求,获取JSON响应内容。例如:

    import requests
    
    def send_request(url, params):
       response = requests.get(url, params=params)
       return response.json()
    
  3. 响应处理
    将JSON数据转换为HTML格式展示。例如:

    def generate_html(response_data):
       html_content = f"<html><body>{response_data['status']}, {response_data['data']}</body></html>"
       return html_content
    
  4. 输出结果
    将处理后的HTML内容打印或保存至文件。例如:

    if __name__ == "__main__":
       url = input("请输入API地址:") or "https://api.example.com/data"
       params = input("请输入参数:") or {"key": "secret"}
       response = send_request(url, params)
       html_output = generate_html(response)
       print(html_output)
    

二、完整代码实现

import requests

def send_request(url, params):
    response = requests.get(url, params=params)
    return response.json()

def generate_html(response_data):
    html_content = f"<html><body>{response_data['status']}, {response_data['data']}</body></html>"
    return html_content

def main():
    # 示例输入
    url = input("请输入API地址:") or "https://api.example.com/data"
    params = input("请输入参数:") or {"key": "secret"}

    # 发送GET请求
    response = send_request(url, params)

    # 处理响应
    if "status" in response:
        html_output = f"<html><body>{response['status']}, {response['data']}</body></html>"
    else:
        html_output = f"请求失败,无响应数据:{response}"

    # 输出结果
    print(html_output)

if __name__ == "__main__":
    main()

三、预期输出

输入:

API地址:https://api.example.com/data
参数:key=secret

输出:

<html>
<body>
Sample Data
</body>
</html>

四、总结

本示例通过Python实现了一个简单的网络请求框架,能够接收API地址和参数并生成HTML响应。核心功能包括输入处理、HTTP请求发送、响应数据处理及输出格式化,符合题目的技术要求。该实现涉及文件读写和数据处理,可在1~3天内完成,并确保输出结果简洁直观。