Python urllib 模块使用指南
1. 概述
urllib 是 Python 内置的 HTTP 请求库,无需额外安装即可使用。它包含以下主要模块:
request:基本的 HTTP 请求模块error:异常处理模块parse:URL 处理工具模块robotparser:robots.txt 解析模块(使用较少)
注意:Python 2 中有 urllib 和 urllib2 两个库,但在 Python 3 中已统一为 urllib。
2. 发送请求
2.1 urlopen 方法
urlopen 是最基本的请求发送方法:
参数说明:
-
data 参数:用于 POST 请求
-
timeout 参数:设置超时时间(秒)
-
其他参数:
context:SSL 设置cafile/capath:CA 证书路径
2.2 Request 类
用于构建更复杂的请求:
完整构造方法:
2.3 高级用法
验证处理
代理设置
Cookies 处理
保存 Cookies 到文件:
3. 异常处理
3.1 URLError
3.2 HTTPError
4. URL 解析
4.1 urlparse
4.2 urlunparse
4.3 urlencode
4.4 quote/unquote
5. Robots 协议分析
5.1 基本用法
5.2 常用方法
set_url(): 设置 robots.txt URLread(): 读取并解析 robots.txtcan_fetch(): 检查是否允许抓取mtime(): 获取最后解析时间modified(): 设置最后解析时间
6. 最佳实践建议
- 始终设置 User-Agent:避免被识别为爬虫
- 合理使用 timeout:防止长时间无响应
- 处理异常:增强程序健壮性
- 遵守 robots.txt:尊重网站规则
- 考虑使用 requests 库:对于复杂需求,requests 库更友好
7. 更新说明(2023)
- 移除了 Python 2 相关内容
- 更新了异常处理的最佳实践
- 增加了对现代 Web 开发的建议
- 优化了代码示例的可读性
- 强调了 HTTPS 和安全连接的重要性

