Created
October 26, 2021 12:15
-
-
Save DarkCat09/2863215b338027a2d36e5a5c6f08f651 to your computer and use it in GitHub Desktop.
Find keywords in files using Python / Поиск ключевых слов в файлах через Python
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import os | |
import re | |
# Лог-файл: | |
txt = open('result.txt', 'wt') | |
# Берём список файлов | |
files = os.listdir() | |
# Каждый файл... | |
for f in files: | |
# ... читаем в бинарном режиме, | |
br = open(f, 'rb') | |
content = br.read() | |
br.close() | |
# ищем в содержимом кейворд, | |
# который окружён символами начала/завершения слова | |
# и начинается с заглавной буквы: | |
kwords = re.search( | |
r'\b[A-ZА-ЯЁ][\wА-ЯЁа-яё]+\b', | |
content | |
) | |
# Теперь перебираем все номера вхождений | |
# (kwi - keyword index), | |
for kwi in range(len(kwords)): | |
# извлекаем значение и диапазон | |
kw = kwords[kwi] | |
start = kwords.start(kwi) | |
end = kwords.end(kwi) | |
# и пишем всё в файл | |
# (получится: In example.bin from 10 to 20 found ДляПримера, | |
# то есть: В файле example.bin, с 10-го по 20-ый символ найдено ДляПримера). | |
txt.write(f'In {f} from {start} to {end} found {kw}\n') | |
txt.close() | |
print('Completed!') | |
input('Press ENTER...') | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment