Python爬虫遭遇反爬拦截的Cookie与UA配置方案

小石头
小石头
发布时间:2026-10-14 | 3人浏览过
原创

本文介绍Python爬虫在爬取商品时因反爬机制导致失败的处理方法。通过浏览器开发者工具分析Network请求,提取有效的Cookie和User-Agent信息,并将其添加到headers中。文章提供了完整的代码示例,展示如何正确构建请求头以绕过基础反爬验证,确保数据抓取成功。

启用开发者工具分析网络请求

首先,访问目标网站并启用浏览器的开发者工具。

在浏览器界面中,通过右键点击“检查”或直接按下F12快捷键即可打开开发者模式。

接着,在开发者工具中切换到“Network”(网络)标签页,筛选“Doc”类型请求,随后刷新页面以捕获相关数据。

在Network面板中选中Doc分类,查看具体请求的Headers(标头),并在其中搜索“cookie”字段以获取必要的身份验证信息。

从请求头中提取有效的Cookie值以及User-Agent字符串,这两者是模拟浏览器访问的关键参数。

将获取到的Cookie和User-Agent配置到Python代码的headers字典中,以模拟正常浏览器请求。


def getHTMLText(url):
  kv = {
    'cookie': 'adsgadfafegadsgadsfaefasdfaewfadsfag'
    'uaer-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'
  }
    try:
    r = requests.get(url, headers=kv, timeout=30)
    r.raise_for_status()
    r.encoding = r.apparent_encoding
    return r.text
  except:
    return "gg"

Python爬虫代码实现示例

以下是具体的代码实现示例:

程序逻辑与结构设计

程序整体架构设计如下:

  1. 1. 构建商品搜索请求,并循环遍历各个页面以获取数据。
  2. 2. 对每个返回的页面进行解析,提取商品名称及价格等关键信息。
  3. 3. 将提取到的结构化信息输出至指定位置。

常见错误排查与HTML响应分析

在实际操作中可能遇到的问题:

尽管代码执行成功,但返回的数据可能存在异常或错误。

通过打印HTML源码可以发现,服务器返回了特定的错误页面内容,具体表现如下:


<script type="text/javascript">
  TRLang = {
    ERROR_NICK_BLANK: "请填写账户名",
    ERROR_PASSWORD_BLANK: "请输入密码",
    ERROR_NICK_PASSWORD_BLANK: "请输入账户名和密码",
    ERROR_CHECKCODE_BLANK: "请输入验证码",
    TIPS_REMEMBER_PASSWORD: "记住密码",
    TIPS_NOT_REMEMBER_PSW_ON_PUBLIC: "不要在公共计算机记住密码,防止账户被盗"
  };
</script>

以上就是关于Python爬虫处理商品数据时遇到反爬拦截的解决方案,更多相关Python爬虫技巧请查阅本站往期文章或继续浏览后续内容,感谢支持!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表