You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python在VS Code中无法获取谷歌搜索结果,Colab可正常运行

解决谷歌搜索结果爬取异常问题

问题根源

谷歌的反爬机制会校验请求的User-Agent头:本地用requests.get()发起请求时,默认请求头会被识别为非浏览器的机器人请求,返回的内容是带验证或仅含基础页面元素的内容,自然拿不到有效搜索链接;而Google Colab的环境默认请求头更接近真实浏览器特征,所以能正常获取结果。

修复代码

给请求添加模拟浏览器的请求头,同时调整链接筛选逻辑(谷歌搜索结果的有效链接通常嵌套在特定类名的容器中),修改后的代码如下:

import requests
from bs4 import BeautifulSoup

# 模拟浏览器的请求头,可替换为你当前浏览器的真实UA
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
}

url = "https://www.google.com/search?q=wikipedia&num=10"
requests_results = requests.get(url, headers=headers)
soup_result = BeautifulSoup(requests_results.content, "html.parser")

# 提取有效搜索结果链接
for result_container in soup_result.find_all('div', class_='yuRUbf'):
    link = result_container.find('a')['href']
    print(link)

额外提醒

  • User-Agent可以在浏览器开发者工具的Network面板里,随便找一个请求查看Request Headers获取真实值
  • 即使加了请求头,频繁请求仍可能触发谷歌的验证机制,建议控制请求频率,必要时使用代理
  • 爬取前请遵守谷歌的服务条款,避免过度爬取影响服务正常运行

内容的提问来源于stack exchange,提问作者Itisai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 10:32:02