

【やりたいこと】RSSフィードからスクレイピングしたい!
今回は、RSSフィードからスクレイピングを行います。
feedparserを使用すると簡単にRSSフィードからスクレイピングできます!
さっそく、やってみましょう!
【10分でできる】feedparser使用
※ダウンロード時間は10分の中に含まれていません。
0.概要
feedparserをインストールします。次に、RSSフィードを取得します。次に、Pythonスクリプトファイルを作成し、実行します。最後に、今回使用したスクリプトファイルの解説を行います。
1.使用したもの
・Virtual box
・Vagrant

・Term Term

・Python3.4
・feedparser
2.手順
※下記の記事の内容を完了しているものとして、進めていきます。


①feedparserのインストール
pip install feedparser
上記を実行することで、feedparserをインストールしましょう。
②RSSフィードの取得
下記のリンクから、RSSフィードを取得します。
RSSフィードを取得するブログのURLを記入して、自動検出スタートをクリックします。
下の方にRSSフィードが表示されるので、コピーしましょう。
③Pythonスクリプトファイルの作成
import feedparser # 本サイトのRSSを読み込む d = feedparser.parse('https://hk-ryukyu.club/hideto/feed') # すべての要素について処理を繰り返す。 for entry in d.entries: print(entry.link, entry.title)Pythonクローリング&スクレイピング サンプルコードscrape_by_feedparser.pyを使用 ※URL変更
feedparser.parseの引数に先ほどコピーしたRSSフィードをペーストします。
※コードの解説は⑤で行います。
④実行
python scrape_by_feedparser.py
上記を実行します。
実行した結果、RSSフィードから、記事URLとタイトルを抜き出せました。
⑤コード解説
import feedparser # 本サイトのRSSを読み込む d = feedparser.parse('https://hk-ryukyu.club/hideto/feed') # すべての要素について処理を繰り返す。 for entry in d.entries: print(entry.link, entry.title)
上記のコードで、特に着目してほしいところは、以下の2つです。
・entry.link
・entry.title
上記の2つをインタラクティブシェルで試すと、
>>> d.entries[0].link 'https://hk-ryukyu.club/hideto/archives/811' >>> d.entries[0].title '【スクレイピング】urllibによるWebページの取得'
上記から、コードの「entry.link」「entry.title」は、それぞれ、記事URLと記事タイトルを表していることが分かります。
3.追記
特に難しいところはないかな。
【最後に】参考図書の紹介
以下の書籍は、私がPythonスクレイピングを勉強するにあたって、使用した書籍です。
「Python逆引き大全」は、秀和システムの技術書読み放題サービス「10×Eng」で読めます。最初の2週間は無料、それ以降は、月額900円で利用できます。
「プログラミング超初心者が初心者になるためのPython入門」はkindle unlimitedで読めます。
コメント