we do
This commit is contained in:
parent
aaf6afd6d8
commit
0621eaed3e
1245
data_files/cleaned.txt
Normal file
1245
data_files/cleaned.txt
Normal file
File diff suppressed because it is too large
Load Diff
18
data_files/cleaner.py
Normal file
18
data_files/cleaner.py
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
import re
|
||||||
|
|
||||||
|
# Словацкий алфавит (включает буквы с диакритическими знаками)
|
||||||
|
slovak_alphabet = r'a-zA-ZáäčďéíĺľňóôŕšťúýžÁÄČĎÉÍĹĽŇÓÔŔŠŤÚÝŽ., \n'
|
||||||
|
|
||||||
|
# Открываем TXT файл с обработкой ошибок
|
||||||
|
with open('output.txt', 'r', encoding='utf-8', errors='replace') as file:
|
||||||
|
text_content = file.read()
|
||||||
|
|
||||||
|
# Используем регулярное выражение для замены всех символов, не входящих в словацкий алфавит
|
||||||
|
cleaned_text = re.sub(f'[^{slovak_alphabet} ]', '', text_content)
|
||||||
|
|
||||||
|
# Записываем очищенный текст в новый файл
|
||||||
|
with open('cleaned_output.txt', 'w', encoding='utf-8') as output_file:
|
||||||
|
output_file.write(cleaned_text)
|
||||||
|
|
||||||
|
print("Текст успешно очищен!")
|
||||||
|
|
18
data_files/convert_html.py
Normal file
18
data_files/convert_html.py
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
from bs4 import BeautifulSoup
|
||||||
|
|
||||||
|
# Открываем HTML файл
|
||||||
|
with open('file.html', 'r', encoding='windows-1250') as file:
|
||||||
|
html_content = file.read()
|
||||||
|
|
||||||
|
# Парсим HTML с BeautifulSoup
|
||||||
|
soup = BeautifulSoup(html_content, 'html.parser')
|
||||||
|
|
||||||
|
# Извлекаем текст, удаляя все HTML-теги
|
||||||
|
text = soup.get_text()
|
||||||
|
|
||||||
|
# Записываем текст в файл (или делаем с ним что-то другое)
|
||||||
|
with open('output.txt', 'w', encoding='utf-8') as output_file:
|
||||||
|
output_file.write(text)
|
||||||
|
|
||||||
|
print("Текст успешно извлечён!")
|
||||||
|
|
27
data_files/converter.py
Normal file
27
data_files/converter.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
import chardet
|
||||||
|
from bs4 import BeautifulSoup
|
||||||
|
|
||||||
|
# Определяем кодировку файла
|
||||||
|
with open('file.html', 'rb') as file:
|
||||||
|
raw_data = file.read()
|
||||||
|
|
||||||
|
# Используем chardet для определения кодировки
|
||||||
|
result = chardet.detect(raw_data)
|
||||||
|
file_encoding = result['encoding']
|
||||||
|
|
||||||
|
# Читаем файл с найденной кодировкой
|
||||||
|
with open('file.html', 'r', encoding=file_encoding) as file:
|
||||||
|
html_content = file.read()
|
||||||
|
|
||||||
|
# Парсим HTML
|
||||||
|
soup = BeautifulSoup(html_content, 'html.parser')
|
||||||
|
|
||||||
|
# Извлекаем текст
|
||||||
|
text = soup.get_text()
|
||||||
|
|
||||||
|
# Записываем текст в файл
|
||||||
|
with open('output.txt', 'w', encoding='utf-8') as output_file:
|
||||||
|
output_file.write(text)
|
||||||
|
|
||||||
|
print(f"Текст успешно извлечён! Использована кодировка: {file_encoding}")
|
||||||
|
|
30
data_files/csv_create.py
Normal file
30
data_files/csv_create.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
import csv
|
||||||
|
|
||||||
|
# Открываем файлы с правильными и неправильными строками
|
||||||
|
with open('slovak_no_caps.txt', 'r', encoding='utf-8', errors='replace') as correct_file:
|
||||||
|
correct_lines = correct_file.readlines()
|
||||||
|
|
||||||
|
with open('no_slovak_no_caps.txt', 'r', encoding='utf-8', errors='replace') as incorrect_file:
|
||||||
|
incorrect_lines = incorrect_file.readlines()
|
||||||
|
|
||||||
|
# Убедимся, что оба списка строк имеют одинаковую длину
|
||||||
|
max_length = max(len(correct_lines), len(incorrect_lines))
|
||||||
|
|
||||||
|
# Дополняем более короткий список пустыми строками, если это необходимо
|
||||||
|
correct_lines += [''] * (max_length - len(correct_lines))
|
||||||
|
incorrect_lines += [''] * (max_length - len(incorrect_lines))
|
||||||
|
|
||||||
|
# Открываем CSV файл для записи
|
||||||
|
with open('dataset.csv', 'w', newline='', encoding='utf-8') as csvfile:
|
||||||
|
fieldnames = ['correct', 'incorrect']
|
||||||
|
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
|
||||||
|
|
||||||
|
# Записываем заголовок
|
||||||
|
writer.writeheader()
|
||||||
|
|
||||||
|
# Записываем строки в CSV файл
|
||||||
|
for correct_line, incorrect_line in zip(correct_lines, incorrect_lines):
|
||||||
|
writer.writerow({'correct': correct_line.strip(), 'incorrect': incorrect_line.strip()})
|
||||||
|
|
||||||
|
print("CSV файл успешно создан!")
|
||||||
|
|
1245
data_files/dataset.csv
Normal file
1245
data_files/dataset.csv
Normal file
File diff suppressed because one or more lines are too long
1245
data_files/no_slovak_letters.txt
Normal file
1245
data_files/no_slovak_letters.txt
Normal file
File diff suppressed because it is too large
Load Diff
1244
data_files/no_slovak_no_caps.txt
Normal file
1244
data_files/no_slovak_no_caps.txt
Normal file
File diff suppressed because it is too large
Load Diff
1245
data_files/no_slovak_output.txt
Normal file
1245
data_files/no_slovak_output.txt
Normal file
File diff suppressed because it is too large
Load Diff
1245
data_files/output.txt
Normal file
1245
data_files/output.txt
Normal file
File diff suppressed because it is too large
Load Diff
33
data_files/remove_caps.py
Normal file
33
data_files/remove_caps.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
import re
|
||||||
|
|
||||||
|
# Открываем файл и читаем его содержимое
|
||||||
|
with open('cleaned.txt', 'r', encoding='utf-8', errors='replace') as file:
|
||||||
|
text_content = file.read()
|
||||||
|
|
||||||
|
# Функция для преобразования слов
|
||||||
|
def normalize_caps(text):
|
||||||
|
# Разделяем текст на строки
|
||||||
|
lines = text.splitlines()
|
||||||
|
# Обрабатываем каждую строку
|
||||||
|
normalized_lines = []
|
||||||
|
for line in lines:
|
||||||
|
# Разделяем строку на слова
|
||||||
|
words = line.split()
|
||||||
|
# Проверяем каждое слово
|
||||||
|
for i, word in enumerate(words):
|
||||||
|
if word.isupper(): # Если слово написано полностью заглавными буквами
|
||||||
|
words[i] = word.capitalize() # Меняем на первое заглавное и остальные строчные
|
||||||
|
# Собираем слова обратно в строку и добавляем в список
|
||||||
|
normalized_lines.append(' '.join(words))
|
||||||
|
# Собираем строки обратно в текст
|
||||||
|
return '\n'.join(normalized_lines)
|
||||||
|
|
||||||
|
# Применяем нормализацию
|
||||||
|
normalized_text = normalize_caps(text_content)
|
||||||
|
|
||||||
|
# Записываем изменённый текст в новый файл
|
||||||
|
with open('slovak_no_caps.txt', 'w', encoding='utf-8') as output_file:
|
||||||
|
output_file.write(normalized_text)
|
||||||
|
|
||||||
|
print("Текст успешно нормализован!")
|
||||||
|
|
24
data_files/remove_slovak_letters.py
Normal file
24
data_files/remove_slovak_letters.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
# Словарь для замены словацких символов на обычные буквы
|
||||||
|
replacement_dict = {
|
||||||
|
'á': 'a', 'ä': 'a', 'č': 'c', 'ď': 'd', 'é': 'e', 'í': 'i',
|
||||||
|
'ĺ': 'l', 'ľ': 'l', 'ň': 'n', 'ó': 'o', 'ô': 'o', 'ŕ': 'r',
|
||||||
|
'šť': 'st', 'ú': 'u', 'ý': 'y', 'ž': 'z',
|
||||||
|
'Á': 'A', 'Ä': 'A', 'Č': 'C', 'Ď': 'D', 'É': 'E', 'Í': 'I',
|
||||||
|
'Ĺ': 'L', 'Ľ': 'L', 'Ň': 'N', 'Ó': 'O', 'Ô': 'O', 'Ŕ': 'R',
|
||||||
|
'Š': 'S', 'Ú': 'U', 'Ý': 'Y', 'Ž': 'Z'
|
||||||
|
}
|
||||||
|
|
||||||
|
# Открываем файл и читаем его содержимое
|
||||||
|
with open('no_slovak_letters.txt', 'r', encoding='utf-8', errors='replace') as file:
|
||||||
|
text_content = file.read()
|
||||||
|
|
||||||
|
# Заменяем словацкие символы на обычные буквы
|
||||||
|
for slovak_char, english_char in replacement_dict.items():
|
||||||
|
text_content = text_content.replace(slovak_char, english_char)
|
||||||
|
|
||||||
|
# Записываем изменённый текст в новый файл
|
||||||
|
with open('no_slovak_output.txt', 'w', encoding='utf-8') as output_file:
|
||||||
|
output_file.write(text_content)
|
||||||
|
|
||||||
|
print("Текст успешно нормализован!")
|
||||||
|
|
1244
data_files/slovak_no_caps.txt
Normal file
1244
data_files/slovak_no_caps.txt
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user