【超お手軽】最新GoogleニュースをPythonで取得 ~pygooglenews~

この記事が解決するお悩み
  • 最新のGoogleニュースをPython使って取得したい
  • pygooglenewsの使い方が分からない
  • pygooglenewsのサンプルコードが知りたい

はじめに

今回はPythonを使って、登録不要・無料でお手軽にGoogleニュースを取得できる方法を紹介していきます。非常に短いコードで完結するので、初心者の方にも使い勝手がよい仕様となっております。

今回使うのは、「pygooglenews」というパッケージです。このパッケージでは、ヘッドラインのトップニュースを取得したり、クリエ(検索キーワード)を指定して最新ニュースを取得したり、日付範囲を指定して特定の日時のニュースを取得したりできます。

この記事では、検索キーワードを指定して、最新ニュースのタイトル・URL・日付を取得する方法を説明していきます。

事前準備

早速、パッケージのインストールから行なっていきましょう。

$ pip install pygooglenews --upgrade

Pythonのコード

以下、検索条件を指定してGoogleニュースを取得するスクリプトです。非常に短いスクリプトで完結しています。

from pygooglenews import GoogleNews

#言語および地域指定(もちろん日本以外も可)
gn = GoogleNews(lang = 'ja', country = 'JP')

def get_titles(search):
    news = []
    search = gn.search(search)
    newsitem = search['entries']
    for item in newsitem:
        titles = {
            'title': item.title,
            'url': item.link,
            'date': item.published
        }
        news.append(titles)
    return news

get_titlesと定義した関数の引数searchに「検索キーワード」を入力すれば、ニュース情報が取得できます。
それでは早速実行してみましょう。今回は試しに「ワクチン」というキーワードでニュース取得してみます。

import pandas as pd

#実行
news = get_titles('ワクチン')

#データ確認用
df_news = pd.DataFrame(news)
df_news.head()

実行できたら、次はpandasを使ってデータ確認用の出力結果を確認してみましょう。このように「タイトル・URL・日付」が出力できています。

念のため、実際のGoogleニュースでも検索をかけて、ライブラリの精度検証を行ってみましょう。

Googleニュースでの直接検索と全く同じニュースが、最新記事の順できちんと取れています。

コメントを残す

メールアドレスが公開されることはありません。