青空文庫の本文をpythonで抽出する



ソフトウェア

公開日:2021/9/11          

前提知識
python


■青空文庫とは
青空文庫とは、著作権が切れた作品や著者からの承諾を得た作品を、web上で無料公開しているサイトのことです。 作品そのものを楽しむことはもちろん、ビッグデータとして機械学習などにも用いられ、様々な分析対象とされる場合もあります。

ここでは、青空文庫のデータをpythonに読み込ませる方法を説明します。

■青空文庫の文章構造
青空文庫のサイトに行って、zipファイルをダウンロード/解凍して所定のフォルダに置きます。

テキスト文書の中身は以下の様になっております。見出しと本文の部分のみ抽出したいので、タイトルや注釈部分、本文中にもある振り仮名、および巻末を削除する必要があります。



■pythonによる実装例
以下のどおり。ファイルを読み込む時点でエラーが出る場合は、エンコード方式をほかの形式(utf-8やshift-JISなど)に変えてみてください。

import re

with open('02toenno_maki.txt', 'r', encoding='ANSI') as file: #抽出したいファイル名を記載
    text = file.read()

text = re.split(r'\--+', text)[2] # --が連続した部分で区切り、見出し以降を抽出
text = re.split(r'底本:', text)[0] # '底本'の部分で区切り、見出し、本文を抽出
text = re.sub(r'《.+?》', '', text) # 《》で囲まれた部分を削除
text = re.sub(r'[#.+?]', '', text) # [#]で囲まれた部分を削除
text = text.strip() # 前後の余白を削除

print(text)












サブチャンネルあります。⇒ 何かのお役に立てればと

関連記事一覧



ソフトウェア