如何抓取 Google 新闻:分步指南
谷歌新闻是一项量身定制的新闻聚合服务,根据用户的兴趣在全球范围内收集和聚焦重要新闻。它聚合了来自不同来源的文章和标题,使用户可以在任何设备上随时访问。值得注意的是,"全面报道 "功能提供了对新闻报道的深入了解,展示了来自多家媒体的各种观点。
本指南将引导您从头开始构建一个基于 Python 的 Google News 搜索器。它将使你掌握克服 Google News 反僵尸机制所带来的挑战的知识。在深入学习之前,建议您先熟悉一下新闻抓取的基础知识。
使用 Oxylabs 的 SERP API 增强谷歌新闻抓取功能
我们开发该搜索器的目的是通过有效管理出现的任何复杂情况,简化您现在和将来的搜索任务。利用 Oxylabs 的 SERP API,您可以毫不费力地实时收集数据,并从几乎任何地方访问搜索结果,从而绕过与反僵尸措施相关的问题。
此外,Oxylabs 还提供为期一周的免费试用,让您在探索其功能的同时广泛测试和完善您的刮板。
初始设置——获取 Oxylabs 的 SERP API 凭据
注册并登录仪表板,生成并检索您的 SERP API 这对接下来的步骤至关重要。
安装所需程序库
首先,安装所需的 Python 库:requests、bs4 和 pandas。借助 pandas,你可以创建一个 CSV 文件,用于归档 Google News 的标题。
安装 Pandas 命令
pip install pandas
提出应用程序接口请求
准备好请求载荷和凭据,以便通过 SERP API 发起请求。要渲染 JavaScript,需要将 `render` 参数设为 `html`,这会告诉 API 处理 JavaScript。还要将 `source` 设为 `google`,并指定目标 URL。别忘了用你的实际凭据替换 `USERNAME` 和 `PASSWORD`。
有效载荷和凭证设置

通过请求模块执行 POST 请求。
API 请求命令:
Python
复制代码
response = requests.post(
'https://realtime.oxylabs.io/v1/queries',
auth=credential、
json=payload、
)
print(response.status_code)
成功请求将返回状态代码 200。如遇到其他状态代码,请参阅 API 文档。
检查网页元素

要解析新闻标题,请在网络浏览器中查看谷歌新闻主页,找出必要的 HTML 元素。使用右键或 CTRL SHIFT I 访问的开发工具。
数据解析
所有新闻标题都封装在
标记。利用开发人员工具检查 HTML 源文件,并制定解析策略。

解析命令:
data = []
soup = BeautifulSoup(response.json()["结果"][]0]["内容"], "html.parser")
for 新闻提要 in soup.find_all("h4"):
data.append(headline.text)
find_all() 方法可收集所有标题,然后将其添加到 "数据 "列表中,以便导出 CSV。
将数据导出为 CSV
首先,将数据编译到 DataFrame 中,然后将其导出为 CSV 文件,为使文件更整洁,可选择不包含索引列。
数据导出命令:
df = pd.DataFrame(data)
df.to_csv("google_news_data.csv", index=False)
结论
使用 Oxylabs 的网页抓取解决方案,可以帮助你及时获取 Google News 的最新动态。借助功能强大的 Oxylabs Google News Scraper API,可增强你的抓取项目。本文概述的策略可让你高效提取 Google News 数据,而无需担心代理轮换和反爬虫机制。

