Help us understand the problem. What is going on with this article?

Google News Rss(API)

概要

言わずと知れたGoogle Newsですが、URLをいじれば簡単にRSSを取得することができます。
ドキュメントはありませんが、通常の検索エンジンで使えるテクニックを駆使すればかなり遊べます。

RSSの仕様

一つの記事について以下のような情報が返ってきます。

<item>
<title>
8人の孫持つポール・マッカートニーが絵本執筆、来年発売へ - ロイター (Reuters Japan)
</title>
<link>https://jp.reuters.com/article/paul-idJPKCN1M80CA</link>
<guid isPermaLink="false">
CAIiEGn2PujAqMvf_XBJneUMkFwqGQgEKhAIACoHCAowroX-CjDCyvYCMJrd3AU
</guid>
<pubDate>Thu, 27 Sep 2018 07:00:00 GMT</pubDate>
<description>
<a href="https://jp.reuters.com/article/paul-idJPKCN1M80CA" target="_blank">8人の孫持つポール・マッカートニーが絵本執筆、来年発売へ</a>&nbsp;&nbsp;<font color="#6f6f6f">ロイター (Reuters Japan)</font><p>英歌手のポール・マッカートニーさん(76)が子供向けの絵本を書き、来年出版されることになった。</p>
</description>
<source url="https://jp.reuters.com">ロイター (Reuters Japan)</source>  
</item>

クックブック

Topic検索

指定したトピックに関するヘッドラインを返す

https://news.google.com/news/rss/headlines/section/topic/{TOPIC_NAME}

TOPIC_NAMEに指定できる単語は以下の通り

  • WORLD
  • NATION
  • BUSINESS
  • TECHNOLOGY
  • ENTERTAINMENT
  • SPORTS
  • SCIENCE
  • HEALTH

これ以外の単語を指定するとエラーになります。

国際ニュースが欲しい場合は以下のようにします。

https://news.google.com/news/rss/headlines/section/topic/WORLD

地理検索

https://news.google.com/news/rss/headlines/section/geo/{geo}

国や都市名をアルファベットで入れると、その地域に関するニュースを検索できます。
geoに指定できる単語はとりあえず国名や都市名はいけるみたいですが・・・詳しくはわかっていない模様。

queryで指定して検索する場合は、関連する記事ならなんでも返って来ますが、こちらは硬い記事が多く返ってきます。

https://news.google.com/news/rss/headlines/section/geo/Vladivostok
上記のURLではウラジオストクについての記事が返ってきます。


クエリーを使った検索

query検索

これが一般的な検索方法ではないでしょうか。

https://news.google.com/rss/search?q={query}

指定したqueryに関連する記事が返ってきます。

期間を指定した検索

指定した期間の記事を検索したい場合、ついこの間実装されたafter、 before フィルターをqueryに追加します。
ただし、返ってくるpubDateは、GMT表記で日本時間とは9時間分の時差がありますのでご注意。

before:2019-8-30 (or before:2019/8/30)
after:2019-7-29 (or after:2019/7/30)

下記のURLで、2019/8/30以前2019/7/29以降の記事が取得できます.

https://news.google.com/rss/search?q=after:2019/7/29%20before:2019/8/30

特定のメディアの記事のみ検索

queryにsite:{site_domain}を付け足すことで、指定したメディアの記事のみを取得できます.
ここで指定するsite_domainはitemの中にあるsourceタグのurl属性を指定してあげればオッケーです.

https://news.google.com/rss/search?q=サッカ-%20site:https://www.sankei.com
上記では産経のサッカーについての記事が返ってきます.

※ 2019-12-03現在、google newsのクエリー検索におけるsiteフィルターは効かなくなっているようです

通常の検索では普通に効くようですので、Google Newsにおける検索のみ制限がかけられているのだと思われます。

とはいっても上に政策あれば下に政策あり、代わりにinurlフィルターを利用しましょう。

https://news.google.com/rss/search?q=サッカ-%20inurl:https://www.sankei.com

または、

https://news.google.com/rss/search?q=サッカ-%20inurl:sankei.com

これで産経のサッカーについての記事が返ってきます.

言語の指定

hl、ceid、glパラメーターで言語の指定ができます。
主な言語とパラメーターの対応は以下のようになっています。

言語 Parameter
日本語 "hl=ja&gl=JP&ceid=JP:ja"
US英語 "hl=en-US&gl=US&ceid=US:en"
イギリス英語 "hl=en-GB&gl=GB&ceid=GB:en"
中国語 "hl=zh-CN&gl=CN&ceid=CN:zh-Hans"
ドイツ語 "hl=de&gl=DE&ceid=DE:de"
スペイン語 "hl=es-419&gl=US&ceid=US:es-419"
アラビア語 "hl=ar&gl=EG&ceid=EG:ar"

https://news.google.com/rss/search?q=soccer&hl=en-US&gl=US&ceid=US:en
サッカーについてのアメリカ英語の記事が返ってきます.

参考

KMD
web engineerの卵
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした