Что именно вы пытаетесь сделать именно?Я думаю, что, возможно, я вас неправильно понимаю.
Конечным результатом является то, что вы хотите конвертировать каждый pdf в текстовый файл, верно?
import textract
import os
filetext_list = []
directory=os.getcwd()
for file in os.listdir(directory):
txt = textract.process(file, method = 'pdfminer')
filetext_list.append(txt)
for index, text in enumerate(filetext_list) :
with open('article_{0}.txt'.format(index),'w') as f:
f.write(str(text).replace("\n",""))
, таким образом, если содержимое вашего каталога было [thing1.pdf, thing2.pdf, thing3.pdf] тогда вы создали новые файлы article_0 (с содержимым thing1.pdf), article_1 (с содержимым thing2.pdf), article_2 (с содержимым thing3.pdf)
Я не уверен, как указать вам, где вы ошиблись с вашим кодом асинхронно.Но вам лучше начать заново думать об этом, чем пытаться продолжать использовать логику, которая у вас есть в настоящее время.
Каждый новый «open» в сочетании с записью перезаписывает исходный файл.
Итак, вы получаете article_0 и article_1 с содержимым последнего pdf в списке файловв каталоге.
Ваш цикл с "range (2)" также вызывается один раз для каждого файла в вашем каталоге, поэтому содержимое article_0 выглядит как "содержимое первого файла, а затем содержимоеснова первый файл, затем содержимое второго файла, затем содержимое первого файла, затем содержимое второго файла, затем третий, затем 1-й -> 2-й -> 3-й -> 4-й и т. д.
Кроме того, если вы делаете «с открытым», вам не нужно закрывать файл. Он автоматически закрывается после установки.