3. Verarbeitung natürlicher Sprache mit Python 1-2. So erstellen Sie einen Korpus: Aozora Bunko

** 1. Holen Sie sich die Datei und extrahieren Sie nur den Text **

⑴ Import verschiedener Module

import re
import zipfile
import urllib.request
import os.path
import glob

⑵ Dateipfad abrufen

Hier ist das Material Kenji Miyazawas "Galaxy Railroad Night".

URL = 'https://www.aozora.gr.jp/cards/000081/files/43737_ruby_19028.zip'

⑶ Methode zum Abrufen / Dekomprimieren einer Zip-Datei

def download(URL):
    zip_file = re.split(r'/', URL)[-1] #➀
    urllib.request.urlretrieve(URL, zip_file) #➁
    dir = os.path.splitext(zip_file)[0] #➂

    with zipfile.ZipFile(zip_file) as zip_object: #➃
        zip_object.extractall(dir) #➄

    os.remove(zip_file) #➅

    path = os.path.join(dir,'*.txt') #➆
    list = glob.glob(path) #➇
    return list[0] #➈

** 1) Zip-Datei herunterladen **

** 2) Entpacken und speichern Sie die Zip-Datei **

** 3) Holen Sie sich den Pfad der gespeicherten Datei **

⑷ Methode zum Lesen der Datei und zum Extrahieren des Körpers

def convert(download_text):
    data = open(download_text, 'rb').read() #➀
    text = data.decode('shift_jis') #➁

    #Textextraktion
    text = re.split(r'\-{5,}', text)[2] #➂  
    text = re.split(r'Unteres Buch:', text)[0] #➃
    text = re.split(r'[#Neue Seite]', text)[0] #➄

    #Geräuschreduzierung
    text = re.sub(r'《.+?》', '', text) #➅
    text = re.sub(r'[#.+?]', '', text) #➆
    text = re.sub(r'|', '', text) #➇
    text = re.sub(r'\r\n', '', text) #➈
    text = re.sub(r'\u3000', '', text) #➉   

    return text

** 1) Datei lesen **

** 2) Extrahieren des Textes mit re.split () **

** 3) Entfernen (Ersetzen) von Rauschen durch "re ()" **

⑸ Dateierfassung und Textextraktion

download_file = download(URL)
text = convert(download_file)

print(text)

image.png

** 2. "Separates Schreiben" von MeCab **

⑹ Installation von MeCab, Abteilung

!apt install aptitude
!aptitude install mecab libmecab-dev mecab-ipadic-utf8 git make curl xz-utils file -y
!pip install mecab-python3==0.7
import MeCab
mecab = MeCab.Tagger("-Owakati")
text = mecab.parse(text)

print(text)

image.png

separated_text = text.split()
print(separated_text)

image.png

** 3. Wenn Sie auf Ihren lokalen PC herunterladen **

⑺ Erstellen Sie eine Datei und bringen Sie sie auf Ihren lokalen PC

with open('output.txt', 'w') as f:
    f.write(text)
from google.colab import files

files.download('output.txt')

image.png

Recommended Posts

3. Verarbeitung natürlicher Sprache mit Python 1-2. So erstellen Sie einen Korpus: Aozora Bunko
[Python] So erstellen Sie mit Matplotlib ein zweidimensionales Histogramm
3. Verarbeitung natürlicher Sprache durch Python 2-1. Netzwerk für das gleichzeitige Auftreten
3. Verarbeitung natürlicher Sprache durch Python 1-1. Word N-Gramm
Fassen Sie mit tf.data.Dataset api zusammen, wie Text (Verarbeitung natürlicher Sprache) vorverarbeitet wird
Lesen einer CSV-Datei mit Python 2/3
3. Verarbeitung natürlicher Sprache durch Python 2-2. Koexistenznetzwerk [mecab-ipadic-NEologd]
So führen Sie eine Mehrkern-Parallelverarbeitung mit Python durch
Python: Verarbeitung natürlicher Sprache
So erstellen Sie eine JSON-Datei in Python
[Python] Ich habe mit der Verarbeitung natürlicher Sprache ~ Transformatoren ~ gespielt
Schritte zum Erstellen eines Twitter-Bots mit Python
Ich werde eine detaillierte Erklärung zum Tod schreiben, während ich 100 Python für die Verarbeitung natürlicher Sprache 2020 mit Python löse
Verfahren zur Erstellung plattformübergreifender Apps mit kivy
[Python] So erstellen Sie eine lokale Webserverumgebung mit SimpleHTTPServer und CGIHTTPServer
So konvertieren / wiederherstellen Sie einen String mit [] in Python
[Python] Wie zeichnet man mit Matplotlib ein Liniendiagramm?
So erstellen Sie ein Untermenü mit dem Plug-In [Blender]
[Kapitel 5] Einführung in Python mit 100 Klopfen Sprachverarbeitung
Erstellen einer Umgebung für die Verarbeitung natürlicher Sprache mit Python
[Kapitel 3] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Kapitel 2] Einführung in Python mit 100 Klopfen Sprachverarbeitung
[Python] Wie zeichnet man mit Matplotlib ein Streudiagramm?
[Kapitel 4] Einführung in Python mit 100 Klopfen Sprachverarbeitung
100 Sprachverarbeitungsklopfen mit Python 2015
Erstellen Sie ein Verzeichnis mit Python
[Verarbeitung natürlicher Sprache / NLP] Einfache Rückübersetzung durch maschinelle Übersetzung mit Python
[Übung] Erstellen Sie eine Watson-App mit Python! # 3 [Klassifizierung der natürlichen Sprache]
So installieren Sie NPI + Senden Sie eine Nachricht an Python
So konvertieren Sie mit Python [Anwendung] von einem Array in ein Wörterbuch
Erstellen Sie einen Mastodon-Bot mit einer Funktion, die automatisch mit Python antwortet
So erstellen Sie mit snappyHexMesh ein Flussnetz um einen Zylinder
[Python Kivy] So erstellen Sie ein einfaches Popup-Fenster
[Python] Versuchen Sie, Ramen-Shops durch Verarbeitung natürlicher Sprache zu klassifizieren
Erstellen einer Entwicklungsumgebung für die Python2.7-Serie mit Vagrant
Erstellen Sie eine Nachricht, die der Lokalisierung entspricht, mit einer Python-Übersetzungszeichenfolge
[Python Kivy] So erstellen Sie mit pyinstaller eine exe-Datei
Studieren Sie die Verarbeitung natürlicher Sprache mit Kikagaku
Python: So verwenden Sie Async mit
100 Sprachverarbeitungsklopfen mit Python (Kapitel 1)
[Verarbeitung natürlicher Sprache] Vorverarbeitung mit Japanisch
So erstellen Sie ein Conda-Paket
Erstellen Sie eine virtuelle Umgebung mit Python!
100 Sprachverarbeitungsklopfen mit Python (Kapitel 3)
So erstellen Sie eine virtuelle Brücke
Erste Schritte mit Python
Wie erstelle ich eine Docker-Datei?
So berechnen Sie das Datum mit Python
5 Möglichkeiten zum Erstellen eines Python-Chatbots
Vorbereitung zum Starten der Verarbeitung natürlicher Sprache