如果转换出来的Word文档中出现乱码,可能是由于文本编码不匹配导致的。PDF文件中的文本可能使用了不同的编码格式,而Word文档默认使用的是UTF-8编码。

为了解决这个问题,您可以尝试使用不同的编码格式来保存文本到Word文档中。下面是修改后的代码,尝试使用不同的编码格式:

import PyPDF2
from docx import Document

def extract_text_from_pdf(file_path):
    text = ""
    with open(file_path, 'rb') as file:
        pdf_reader = PyPDF2.PdfReader(file)
        for page in pdf_reader.pages:
            text += page.extract_text()
    return text

def create_word_file(text, output_file_path):
    doc = Document()
    doc.add_paragraph(text.decode('utf-8', 'ignore'))  # 修改这里
    doc.save(output_file_path)

# 设置输入的PDF文件路径和输出的Word文件路径
pdf_file_path = "input.pdf"
word_file_path = "output.docx"

# 从PDF文件提取文本
extracted_text = extract_text_from_pdf(pdf_file_path)

# 创建Word文档并将提取的文本写入其中
create_word_file(extracted_text, word_file_path)

print("转换完成!")

在上面的代码中,将 doc.add_paragraph(text) 修改为 doc.add_paragraph(text.decode('utf-8', 'ignore'))。这将尝试使用UTF-8编码来解码文本并将其写入Word文档中。

如果仍然存在乱码问题,您可以尝试其他的编码格式,例如GBK或UTF-16,根据PDF文件中文本的实际编码来选择适当的编码格式。

如果问题仍然存在,请提供更多关于PDF文件和乱码的详细信息,以便我们更好地帮助您解决问题。

Word文档乱码?可能是编码问题!

原文地址: https://www.cveoy.top/t/topic/17A 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录