掌握使用 requests 与 urllib 发起 HTTP GET 请求的核心技巧
GET 是 HTTP 协议中最常用的请求方法之一,用于从服务器获取数据。它将参数附加在 URL 后面(查询字符串),不包含请求体。
典型应用场景包括:调用 RESTful API、爬取网页内容、获取 JSON 数据等。
requests 是 Python 中最流行的 HTTP 库,简洁易用。
pip install requests
import requests
# 发送 GET 请求
response = requests.get('https://httpbin.org/get')
# 检查状态码
if response.status_code == 200:
print(response.json()) # 如果返回 JSON
else:
print("请求失败:", response.status_code)
params = {'key1': 'value1', 'key2': 'value2'}
response = requests.get('https://httpbin.org/get', params=params)
print(response.url) # 自动拼接为 https://...?key1=value1&key2=value2
无需安装第三方库,适合轻量级脚本或受限环境。
from urllib import request, parse
import json
# 构造带参数的 URL
url = 'https://httpbin.org/get'
params = {'name': '张三', 'age': 25}
query_string = parse.urlencode(params)
full_url = url + '?' + query_string
# 发送请求
with request.urlopen(full_url) as resp:
data = resp.read().decode('utf-8')
print(json.loads(data))
requests.get(url, timeout=5)对于大多数项目,推荐使用 requests 库,它提供了更直观、强大的接口;若需避免依赖,可使用 Python 内置的 urllib。无论哪种方式,都应关注错误处理、超时控制和安全性。