告别手动写爬虫代码-从F12到Python
手动编写 requests 代码经常因为标点符号、Header 格式错误、TLS 指纹识别或 Cookie 过期而导致报错,这是非常正常的情况。
针对**“把 cURL/F12 快速转成可运行代码”**这个需求,这里整理了四个“神器”帮你一键解决。按推荐程度排序如下:
- CurlConverter (Web版/命令行)
定位: 最推荐,零门槛,全球开发者首选。
专门解决手动抄写 Header 和 Cookie 的痛点。它能把 cURL 命令完美“翻译”成 Python requests 代码(支持数十种语言)。
- 网址: curlconverter.com
- 优点: 自动处理 Header 格式、JSON 转义、Cookie 字典化,完全避免由于手误导致的 Bug。
使用步骤:
- 在浏览器 F12 开发者工具的网络面板中,右键点击请求 -> Copy as cURL。
- 打开网站,直接粘贴到左边的文本框里。
- 右边会自动生成 Python 代码,直接复制到 IDE 运行即可。
- Postman (调试神器)
定位: 先验证请求有效性,再生成代码。
如果你生成的代码跑不通,很有可能是请求本身的问题(如 Cookie 已过期)。Postman 允许你在可视化界面先测通接口。
使用步骤:
- 打开 Postman,点击左上角的 Import -> Raw Text。
- 粘贴 cURL 命令并点击 Import,Postman 会自动填充参数。
- 点击 Send 测试:
- 如果报错,说明 Cookie 或参数失效,需重新抓包。
- 如果成功,点击右侧栏的 </> 图标 (Code snippet)。
- 选择 Python - Requests,复制生成的代码。
- 进阶大杀器:curl_cffi
定位: 解决“代码逻辑没错,但被服务器拦截 (403 Forbidden)”的问题。
重点注意: 如果 CurlConverter 生成的代码一模一样却报错(如 403 或连接重置),大概率是因为 TLS 指纹识别。百度、Cloudflare 等大厂会识别 Python requests 库的指纹并拦截。
解决方案: 使用 curl_cffi 库模拟真实浏览器指纹。
安装:
pip install curl_cffi
代码示例:
用法几乎与 requests 一致,只需增加 impersonate 参数:
from curl_cffi import requests
# 把生成的 requests 代码拿过来,改成用 curl_cffi 调用
response = requests.post(
"YOUR_URL_HERE",
headers=headers,
data=data,
impersonate="chrome110" # 关键:伪装成 Chrome 浏览器
)
4. 终极懒人方案:Playwright Codegen
定位: 录制即代码,解决极其复杂的反爬虫。
如果你不想分析接口参数,也不想处理反爬,可以直接使用浏览器自动化录制。虽然运行效率比 requests 低,但因其是真实浏览器操作,极难被屏蔽。
使用步骤:
在终端输入以下命令,浏览器会自动弹出:
playwright codegen fanyi.baidu.com
你在这个浏览器里的每一次点击和输入,终端窗口都会实时生成对应的 Python 代码。
总结与建议
- 第一步: 先用 CurlConverter 转换代码,尝试运行。
- 第二步: 如果代码报
403/404或Connection Error,说明遭遇反爬,请放弃标准 requests,直接改用 curl_cffi。 - 调试: 如果还是无法解决,请检查 HTTP 状态码或 Python 抛出的具体 Exception。
下一步建议
如果您在使用 `curl_cffi` 后仍然遇到报错,或者需要处理更复杂的动态加载页面(JavaScript 渲染),您希望我为您生成一段 **Playwright 的基础启动代码** 吗?
