Python
feedparser
形態素解析
LIGDay 8

【Pythonで形態素解析】RSSから記事タイトルを取得して形態素解析をしてみた

この記事は、「LIG Advent Calendar 2017」の8日目の記事です。
https://qiita.com/advent-calendar/2017/lig

本日は、2日目の記事に引き続き、Pythonによる形態素解析に関する内容を書いていきたいと思います。

▼2日目の記事はこちら
https://qiita.com/kazuhikoyamashita/items/decc0b7dbb670e7f151a

本日は、RSSから記事タイトルを取得して、その記事タイトルを形態素解析する内容です。

feedparserをインストールする

RSSを取得、解析するために、feedparserをpipコマンドでサクッとインストールします。

$ pip install feedparser

feedparser利用してRSSから記事タイトルを取得する

feedparser利用してRSSから記事タイトルを取得するPythonスクリプトは下記のようになります。

get_rss.py
import feedparser

# RSSから記事タイトルを取得
feed_url = 'https://liginc.co.jp/feed'
feed_result = feedparser.parse(feed_url)

# 記事タイトルを取得し表示する
for entry in feed_result.entries:
    print(entry.title)

実行結果は下記となります。
無事、記事タイトルを取得する事ができました。

$ python get_rss.py
社長の等身大パネルを使って復讐した結果、誰も信じられなくなった男の話
美しい海に囲まれた壱岐島でゲストハウスとレストラン運営しませんか!?【料理人・ゲストハウススタッフ大募集】
問い合わせ対応はAIにおまかせ!?無料で高機能なAIチャットボット「Repl-AI」が日本初上陸!
【朗報】これまで長野でしか提供してなかった宇宙一美味いバーガーが、京都で食べられるようになったぞォーッ!
メイドインジャパンの商品力で、「世界」を舞台に飛躍する。日本経済を盛り上げる、クールな経営者でありたい|メディアハーツ
Alfred3 の Workflow でかっこよく業務効率化!
PREP法ってなに?よく分かってないけど使って話してみる #TOEIC350の英語力 #英会話
【検証】LIGブログのコンバージョンは上がるのか。アクセス解析をKOBITと小川卓さんに依頼した結果(後編)
LAMP豊後大野で油絵の個展をやることになりました【2017年12月2日から12月17日まで】
ウェブサイトの作成や運用をはじめる前に知っておきたいこと

取得した記事タイトルを形態素解析してみる

取得した記事タイトルを形態素解析するPythonスクリプトは下記の通りです。

morphological-analysis.py
import feedparser
import MeCab

# RSS情報の解析
feed_url = 'https://liginc.co.jp/feed'
feed_result = feedparser.parse(feed_url)

# 記事タイトルを取得し配列に格納する
entry_array = []
for entry in feed_result.entries:
    entry_array.append(entry.title)

# 記事タイトルの形態素解析を行う
m = MeCab.Tagger()
result = m.parse(entry_array[0])
print(result)

実行結果です。記事タイトルが形態素解析されている事を確認できました。

$ python morphological-analysis.py
社長  名詞,一般,*,*,*,*,社長,シャチョウ,シャチョー
の 助詞,連体化,*,*,*,*,の,ノ,ノ
等身  名詞,一般,*,*,*,*,等身,トウシン,トーシン
大 接頭詞,名詞接続,*,*,*,*,大,ダイ,ダイ
パネル   名詞,一般,*,*,*,*,パネル,パネル,パネル
を 助詞,格助詞,一般,*,*,*,を,ヲ,ヲ
使っ  動詞,自立,*,*,五段・ワ行促音便,連用タ接続,使う,ツカッ,ツカッ
て 助詞,接続助詞,*,*,*,*,て,テ,テ
復讐  名詞,サ変接続,*,*,*,*,復讐,フクシュウ,フクシュー
し 動詞,自立,*,*,サ変・スル,連用形,する,シ,シ
た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
結果  名詞,副詞可能,*,*,*,*,結果,ケッカ,ケッカ
、 記号,読点,*,*,*,*,、,、,、
誰 名詞,代名詞,一般,*,*,*,誰,ダレ,ダレ
も 助詞,係助詞,*,*,*,*,も,モ,モ
信じ  動詞,自立,*,*,一段,未然形,信じる,シンジ,シンジ
られ  動詞,接尾,*,*,一段,未然形,られる,ラレ,ラレ
なく  助動詞,*,*,*,特殊・ナイ,連用テ接続,ない,ナク,ナク
なっ  動詞,自立,*,*,五段・ラ行,連用タ接続,なる,ナッ,ナッ
た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
男 名詞,一般,*,*,*,*,男,オトコ,オトコ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
話 名詞,サ変接続,*,*,*,*,話,ハナシ,ハナシ
EOS

以上、形態素解析ネタでした!

P.S.
ソースコードは、GitHubにアップしています。
https://github.com/kazuhikoyamashita/python-morphological-analysis