import os
path = r"C:/Users/Administrator/Downloads/cookies2" # путь до папки
word = '_|WARNING:'
sp = []
for filename in os.listdir(path):
if filename.endswith(".txt"):
filepath = os.path.join(path, filename)
with open(filepath, 'r', encoding='utf-8') as file:
data = file.readlines()
for line in data:
if word in line:
sp.append(line[line.index(word)::])
print('Готово')
print(f'Скопировано {len(sp)} строк')
with open('result.txt', 'w', encoding='utf-8') as file:
file.writelines(sp)
for filename in os.listdir(path):
if filename.endswith(".txt"):
filepath = os.path.join(path, filename)
else:
return print('Ошибка: .txt файлы не найдены!')
Вот решение for line in lines:
if word in line:
sp.append(line[line.index(word)::])
break
with open('result.txt', 'w', encoding='utf-8') as file:
file.writelines(sp)
input(f'Готово\nСкопировано {len(sp)} строк.')
else:
return input('Ошибка')
find_lines("C:\Users\Administrator\Downloads\cookies2")
вторая часть, код я маленько улучшил
import os
word = '_|WARNING:'
sp = []
def find_lines(main_path):
global sp
if os.path.exists(main_path):
for filename in os.listdir(main_path):
if filename.endswith(".txt"):
file_path = os.path.join(main_path, filename)
break
if not filename.endswith(".txt"):
file_path = None
if file_path == None:
return input('Ошибка: .txt файла не существует!')
with open(file_path, 'r') as file:
lines = file.readlines()
первая часть
if filename.endswith(".txt"):
^
IndentationError: expected an indented block after 'for' statement on line 8
скрипт:
import os
path = r"C:\Users\Administrator\Downloads\cookies2" # путь до папки
word = '_|WARNING:'
sp = []
for filename in os.listdir(path):
if filename.endswith(".txt"):
filepath = os.path.join(path, filename)
with open(filepath, 'r', encoding='utf-8') as file:
data = file.readlines()
for line in data:
if word in line:
sp.append(line[line.index(word)::])
print('Готово')
print(f'Скопировано {len(sp)} строк')
with open('result.txt', 'w', encoding='utf-8') as file:
file.writelines(sp)