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

安装pygooglenews遇metadata-generation-failed错误,需按人物抓取谷歌新闻

解决pygooglenews安装的metadata-generation-failed错误及实现人物新闻抓取

一、修复安装错误

metadata-generation-failed大多因依赖版本不兼容或pip版本过低导致,按以下步骤尝试解决:

  • 先升级pip、setuptools和wheel到最新版本:
    python -m pip install --upgrade pip setuptools wheel
    
  • 尝试安装指定稳定版本,避开存在metadata问题的版本:
    pip install pygooglenews==0.1.2
    
  • 若上述方法无效,直接从GitHub源码安装:
    pip install git+https://github.com/kotartemiy/pygooglenews.git
    

二、实现人物相关新闻抓取

安装成功后,用以下代码实现输入人物姓名获取对应新闻的功能:

from pygooglenews import GoogleNews

def fetch_person_news(person_name):
    # 初始化GoogleNews,可修改lang和country切换语言/地区
    gn = GoogleNews(lang='zh', country='CN')
    # 搜索指定人物的新闻
    search_result = gn.search(person_name)
    
    # 提取关键新闻信息
    news_items = []
    for entry in search_result['entries']:
        news_info = {
            '标题': entry.title,
            '链接': entry.link,
            '发布时间': entry.published
        }
        news_items.append(news_info)
    
    return news_items

# 使用示例
target_person = input("请输入要查询的人物姓名:")
related_news = fetch_person_news(target_person)
for num, news in enumerate(related_news, 1):
    print(f"\n第{num}条新闻:")
    print(f"标题:{news['标题']}")
    print(f"链接:{news['链接']}")
    print(f"发布时间:{news['发布时间']}")

额外过滤说明

  • 若需限定新闻时间范围,可在search方法中添加before和after参数(格式为YYYY-MM-DD),示例:
    search_result = gn.search(person_name, before='2024-06-01', after='2024-05-01')
    
  • 修改lang和country参数可获取其他语言/地区的新闻,比如lang='en', country='US'对应英文美国地区新闻。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 03:52:05