我正在使用 python 3。我的代码使用 pdfminer 将 pdf 转换为文本。我想在新文件夹中获取这些文件的输出。目前它位于现有文件夹中,使用 pdfminer 从该文件夹转换为 .txt。如何将输出重定向到不同的文件夹。我希望输出位于名为“D:\extracted_text”的文件夹中 到目前为止的代码:
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO
import glob
import os
def convert(fname, pages=None):
if not pages:
pagenums = set()
else:
pagenums = set(pages)
output = StringIO()
manager = PDFResourceManager()
converter = TextConverter(manager, output, laparams=LAParams())
interpreter = PDFPageInterpreter(manager, converter)
infile = open(fname, 'rb')
for page in PDFPage.get_pages(infile, pagenums):
interpreter.process_page(page)
infile.close()
converter.close()
text = output.getvalue()
output.close
savepath = 'D:/extracted_text/'
outfile = os.path.splitext(fname)[0] + '.txt'
comp_name = os.path.join(savepath,outfile)
print(outfile)
with open(comp_name, 'w', encoding = 'utf-8') as pdf_file:
pdf_file.write(text)
return text
directory = glob.glob(r'D:\files\*.pdf')
for myfiles in directory:
convert(myfiles)
您可以使用os.path,加入 https://docs.python.org/3/library/os.path.html#os.path.join,您必须提供目录路径和带扩展名的文件名。它将创建一个完整的 url 并创建一个文件。你可以像下面这样使用它
with open(os.path.join(dir_path,fileCompleteName), "w") as file1:
file1.write("Hello World")
在 Windows 中,以下任何一项都应该有效
"D:/extracted_text/"
os.path.join("/", "D:", "extracted_text", outfile)
os.path.join("D:/", "extracted_text", outfile)
确保目录路径存在"D:/extracted_text"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)