Введение
В данной статье рассмотрим 3 способа определить язык текста в Python.
Определение языка текста при помощи библиотеки langdetect
В Python есть библиотека под названием langdetect, а в ней есть метод detected(), благодаря которому мы можем определить язык текста. Сама библиотека требует установки, а для этого нужно перейти в терминал/командную строку, прописать pip install langdetect, нажать Enter и ждать установки.
После инсталлции импортируем функцию detected() из библиотеки langdetect:
from langdetect import detect
Далее дадим пользователю возможность ввести текст:
from langdetect import detect
text = input("Введите текст: ")
При помощи функции detect() определим язык текста, и выведем его:
from langdetect import detect
DetectorFactory.seed = 0
text = input("Введите текст: ")
detect_language = detect(text)
print(f'Язык текста: {detect_language}')
# Вывод:
# Введите текст: To Sherlock Holmes she is always the woman
# Язык текста: en
Определение языка текста при помощи модуля langid
Для определения языка также можно использовать функцию classify() из модуля langid, который предварительно нужно установить. Для этого нужно перейти в терминал/командную строку, прописать pip install langid, нажать Enter и ждать установки.
После инсталляции импортируем функцию classify() из модуля langid:
from langid import classify
Дадим пользователю возможность ввести какой-либо текст:
from langid import classify
text = input("Введите текст: ")
При помощи функции classify() определим язык текста, и выведем результат:
from langid import classify
text = input("Введите текст: ")
detect_language = classify(text)
print(f'Язык текста: {detect_language}')
# Вывод:
# Введите текст: привет, как дела?
# Язык текста: ('ru', -249.96131563186646)
Определение языка текста при помощи модуля chardet
Рассмотрим ещё один модуль для определения языка текста. В нём мы будем использовать функцию detect() из модуля chardet, которая может определить язык в том случае, если в диапазоне есть символьные байты (127-255). Он как и предыдущие требует установки. Для этого нужно перейти в терминал/командную строку, прописать pip install chardet, нажать Enter и ждать установки.
После инсталляции импортируем функцию detect() из модуля chardet:
from chardet import detect
Дадим пользователю ввести проверяемый текст:
from chardet import detect
text = input("Введите текст: ")
При помощи функции encode() преобразуем текст в кодировку cp1251:
from chardet import detect
text = input("Введите текст: ")
text = text.encode('cp1251')
Далее функцией detect() определим язык текста и выведем его:
from chardet import detect
text = input("Введите текст: ")
text = text.encode('cp1251')
detect_language = detect(text)
print(detect_language)
Заключение
В ходе статьи мы с Вами разобрали 3 способа определить язык текста в Python. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂
Мой Telegram канал
Мой YouTube канал