二、使用 Google News API 獲取結(jié)構(gòu)化新聞數(shù)據(jù)

2.1 當(dāng)前可用的 Google News API 方案

由于 Google 官方 News API 已停用,目前主流選擇包括:

方案類型 工具推薦 特點說明
第三方 API SerpAPI、Zenserp 提供結(jié)構(gòu)化 JSON 數(shù)據(jù),穩(wěn)定可靠
RSS 抓取 Google News RSS 免費但信息粒度有限
自建爬蟲 Python+BeautifulSoup 靈活但存在反爬挑戰(zhàn)

在實際部署中,SerpAPI 是最推薦的解決方案,具備高效、結(jié)構(gòu)清晰、支持語言和區(qū)域過濾等優(yōu)勢。


2.2 SerpAPI 示例:獲取 Google News 實時數(shù)據(jù)

from serpapi import GoogleSearch

params = {
    "engine": "google_news",
    "q": "人工智能",
    "hl": "zh-cn",
    "gl": "cn",
    "num": 20,
    "api_key": "YOUR_SERPAPI_KEY"
}

search = GoogleSearch(params)
results = search.get_dict()
news = results.get("news_results", [])

返回字段說明


三、關(guān)鍵詞提取與話題聚類分析

3.1 中文分詞與詞頻統(tǒng)計

使用 jieba 對標(biāo)題與摘要進行分詞:

import jieba
from collections import Counter

text = " ".join(item["title"] for item in news)
words = [w for w in jieba.cut(text) if len(w) > 1]
top_words = Counter(words).most_common(20)

可視化詞頻

使用 wordcloud 生成關(guān)鍵詞圖譜,快速洞察話題聚焦點。


3.2 聚類分析:識別話題簇

將摘要轉(zhuǎn)向量化后聚類:

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.cluster import KMeans

texts = [item["snippet"] for item in news]
vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(texts)

model = KMeans(n_clusters=5, random_state=42)
labels = model.fit_predict(X)

結(jié)果可將新聞自動分組,例如:


3.3 趨勢時間序列分析

將新聞日期歸類后統(tǒng)計關(guān)鍵詞出現(xiàn)頻率,生成趨勢曲線圖:

import matplotlib.pyplot as plt
from collections import defaultdict

trend = defaultdict(int)
for item in news:
    date = item.get("date", "未知")
    if "小時" not in date:
        trend[date] += 1

plt.plot(list(trend.keys()), list(trend.values()))
plt.xticks(rotation=45)
plt.title("新聞熱度趨勢")
plt.show()

四、情感分析與負(fù)面輿情識別

使用 SnowNLPTextBlob 分析摘要的情緒傾向:

from snownlp import SnowNLP

for item in news:
    score = SnowNLP(item["snippet"]).sentiments
    item["sentiment"] = "正面" if score > 0.6 else "負(fù)面" if score < 0.4 else "中性"

> ? 正面情緒:品牌宣傳、產(chǎn)業(yè)利好
> ? 負(fù)面情緒:爭議報道、事件沖突、政策打擊

可結(jié)合 pandas 分析負(fù)面情緒新聞數(shù)量趨勢與來源分布。


五、構(gòu)建新聞趨勢監(jiān)控系統(tǒng)架構(gòu)

5.1 系統(tǒng)組件設(shè)計

模塊 功能描述
數(shù)據(jù)獲取層 調(diào)用 SerpAPI 獲取新聞數(shù)據(jù)(Python 腳本)
數(shù)據(jù)處理層 分詞、聚類、情感分析
存儲層 MongoDB、Elasticsearch、CSV 文件等
可視化層 Streamlit、Grafana、Tableau 等前端展示
推送機制 郵件、Slack、Webhook 自動通知

5.2 示例架構(gòu)圖

[SerpAPI] ──? [爬蟲腳本] ──? [數(shù)據(jù)分析模塊] ──? [MongoDB]

└──? [Streamlit儀表盤]
└──? [郵件/Slack通知]

六、熱門話題分析的實戰(zhàn)應(yīng)用場景

應(yīng)用方向 使用效果
內(nèi)容編輯選題 自動生成當(dāng)日或本周推薦話題
輿情監(jiān)控與公關(guān) 識別負(fù)面新聞集中趨勢并快速響應(yīng)
投資研究與資訊分析 追蹤特定行業(yè)或企業(yè)相關(guān)新聞密度與情感波動
自動新聞推薦系統(tǒng) 對用戶感興趣關(guān)鍵詞進行聚類與趨勢推送

七、案例分享:內(nèi)容運營自動化實踐

參考 YouTube 上的 n8n + Google News Scraper 自動策劃內(nèi)容 教程,以下是典型流程:

  1. 使用 n8n 定時調(diào)用 Google News 搜索關(guān)鍵詞;
  2. 獲取新聞后生成主題摘要(通過 GPT API);
  3. 匯總?cè)?Google Sheets 或 Notion;
  4. 自動推送給運營團隊制定社群話題或短視頻選題。

八、注意事項與優(yōu)化建議

問題場景 建議策略
API 請求頻率過快 加入 time.sleep() 限流,或使用緩存機制
返回新聞數(shù)量不足 拆分關(guān)鍵詞或提高 num 參數(shù)(建議 ≤ 100)
關(guān)鍵詞聚類不準(zhǔn)確 使用深度 Embedding(如 BERT + UMAP)代替 TF-IDF
時間標(biāo)簽?zāi):ㄈ?quot;4小時前") 使用服務(wù)端統(tǒng)一轉(zhuǎn)換為 UTC 格式

九、總結(jié):打造屬于你的新聞洞察系統(tǒng)

通過結(jié)合 Google News API、關(guān)鍵詞提取、情感分析與趨勢聚類等技術(shù),你可以構(gòu)建:

無論你是內(nèi)容編輯、數(shù)據(jù)分析師、產(chǎn)品經(jīng)理還是開發(fā)者,Google News API 都是構(gòu)建“信息優(yōu)勢”的關(guān)鍵一環(huán)。

上一篇:

如何使用 amazon scraper api 進行商品數(shù)據(jù)采集

下一篇:

使用DeepSeek R1、LangChain和Ollama構(gòu)建端到端生成式人工智能應(yīng)用
#你可能也喜歡這些API文章!

我們有何不同?

API服務(wù)商零注冊

多API并行試用

數(shù)據(jù)驅(qū)動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內(nèi)容創(chuàng)意新穎性、情感共鳴力、商業(yè)轉(zhuǎn)化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準(zhǔn)確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費