【Webスクレイピング】Pythonを使ってNAVERまとめから文章を抽出してみた

Pocket

Webスクレイピング

はじめに

こんにちは.

はんぺんです.

以下の二つの記事を書くときに,WebスクレイピングでNAVERまとめからツンデレ文章を取得させていただきました..

Kerasを用いたディープラーニング(LSTM)で新しいツンデレセリフを生成してみた

マルコフ連鎖で生成した萌えるツンデレセリフ3選

この記事ではその方法について説明していきたいと思います.

コードの説明

インポート

まず初めに必要なライブラリをインポートします.

requests

Requestsは、人が使いやすいように設計されていて、Pythonで書かれている Apache2 Licensed ベースのHTTPライブラリです。

参考: Requests: 人間のためのHTTP

BeautifulSoup

Beautiful Soupは、HTMLやXMLファイルからデータを取り出すためのPythonライブラリです。あなたの好きな構文解析を行い、検索し、変更するための慣用的な方法を提供します。プログラマは数時間または数日間の作業を節約します。

(参考を日本語訳)

参考: Beautiful Soup Documentation

htmlを取得して必要なクラスを取得

ここではhtmlの取得を行い,そこから必要な個所を取り出してきます.

1~7行目: 抽出したいページが5つあるので,URLに合わせて書いていきます.

11行目: 必要なクラスを指定して,その部分だけ取り出します.

13行目: 3秒待って次の処理に移行します.連続でリクエストを送ることは好ましくないので,私はいつも3秒待って処理を続行するようにしています.

必要な個所を取得

抽出した部分を開いてみると,

<p class=”mdMTMWidget01ItemQuote01View”><span class=”mdMTMWidget01ItemQuote01Ico”></span><q class=”mdMTMWidget01ItemQuote01Txt”>001:あたしツンデレな奴って嫌いなの!・・・あんたは別だけど。</q></p>

このように必要ない部分を含んでいるので,成形していきます.

4行目: 文字列として扱った方が都合がいいので,string型にします.

5行目: 前半の不要な部分と</q></p>を削除します.

すると以下の様になります.

001:あたしツンデレな奴って嫌いなの!・・・あんたは別だけど。

テキストファイルへ保存

テキストファイルを作ってそこに保存していきます.

注意点

スクレイピングをする時はいくつかの注意事項があるので,理解しておいた方がよさそうです.

私は以下を読みました.

Webスクレイピングの注意事項一覧

まとめ

今回はWebスクレイピングについてお話ししました.

自然言語処理をするにあたってWeb上の文章データは非常に有益であり,Webスクレイピングを使うことでそれを効率よく集めることができます.

ぜひお試しください.

参考

ツンデレせりふ×100連発!

Kerasを用いたディープラーニング(LSTM)で新しいツンデレセリフを生成してみた

マルコフ連鎖で生成した萌えるツンデレセリフ3選

Requests: 人間のためのHTTP

Beautiful Soup Documentation

Webスクレイピングの注意事項一覧

スポンサーリンク














コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください