This library works with HTML-content and modifies it in some tags to improve sentences tokenizer quality.
pip install nltk
import nltk
nltk.download('punkt')
git clone https://github.com/KMiNT21/html2sent.git
import html2sent
sentences = html2sent.tokenize(html, language='english')
If you don't want to use NLTK, you can just use preprocess functions:
import html2sent
text = html2sent.html2text(html)
text = html2sent.preprocess_text(text)
Demo: demo_simple.py
and demo_folder_multiprocessing.py
Если для разделения полученного текста на предложения используется библиотека nltk, то для русского языка нужно еще скачать обученный ru_punkt-токенизатор.
Варианты:
-
git clone https://github.com/mhq/train_punkt.git
-
git clone https://github.com/Mottl/ru_punkt.git
Скопируйте файл russian.pickle в папку nltk_data (к остальным языковым .pickle файлам)
Альтернативный более точный вариант - библиотека razdel
Подробнее об использовании - https://github.com/natasha/razdel