PythonのfeedparserでRSSフィードを読み込んでみる。

RSSはオワコンと言われることもあるそうだが、どんなデータが入手できるのだろうかと気になり、IT関連おすすめフィードの中からいくつかピックアップして試してみた。
【IT関連】RSSフィードおすすめ12選!登録方法からURLまで丁寧に説明!【Inoreader】 - コスパ大臣のシンプルレビュー
お試しのためだけにRSSリーダーアプリをインストールするのは不安があったので、pythonのfeedparserを使った。
pip install feedparserでモジュールをインストールして以下のスクリプトを実行。

#!/usr/bin/python3
import feedparser
urls = [
'http://b.hatena.ne.jp/hotentry/it.rss',
'http://feed.rssad.jp/rss/gigazine/rss_2.0',
'http://feed.japan.cnet.com/rss/index.rdf',
'http://rss.itmedia.co.jp/rss/1.0/topstory.xml',
'http://feed.japan.zdnet.com/rss/index.rdf',
'http://toyokeizai.net/list/feed/rss',
'http://www.shoeisha.co.jp/rss/index.xml',
]
for i,url in enumerate(urls,1):
    print('\n{0}:{1}'.format(i,url))
    r = feedparser.parse(url)
    for c in r["entries"]:
        print(c["title"])

※久しぶりにスーパーpre記法を使おうとしたが忘れていたので以下を参考にした。
help.hatenablog.com

Windows環境のpythonが壊れてしまっているので、スクリプトを実行する場合はLinux(Ubuntu)環境で実行させているが、DockerコンテナとWSLで試した。
Dockerコンテナで実行した結果をファイルに落とし、Windows環境のカレントディレクトリにコピーする場合。

PS >$c = docker container ls -q
PS >docker container cp ${c}:/home/guest/res1.txt  .

※行末にドットがあります。

WSLで実行した結果をWindows環境にコピーする場合は/mnt以下コピー先のパスを記述する。

cp res2.txt /mnt/c/users/user1/documents

WSLの外のWindows環境(powershell)からだと、wslコマンドを使って"--"の後にコマンドラインを記述することになるのだろう。

wsl -- cp res2.txt /mnt/c/users/user1/documents

一番の問題は取得したデータをいかに活用できるかだが、ちょっと私には無理そうだ。

了