以下是一段 Python 代码,可以批量处理 HTML 文件并将其另存为 docx 文件:

import os
import glob
from docx import Document
from bs4 import BeautifulSoup

# 设置 HTML 文件夹路径和 docx 保存路径
html_folder_path = 'path/to/html/folder'
docx_save_path = 'path/to/docx/save/folder'

# 获取所有 HTML 文件路径
html_files = glob.glob(os.path.join(html_folder_path, '*.html'))

# 循环处理每个 HTML 文件
for html_file in html_files:
    # 打开 HTML 文件并解析
    with open(html_file, 'r') as f:
        soup = BeautifulSoup(f.read(), 'html.parser')
    
    # 创建一个新的 docx 文档
    doc = Document()
    
    # 循环处理每个 HTML 标签
    for tag in soup.find_all():
        # 将 HTML 标签转换为 docx 格式
        if tag.name == 'p':
            doc.add_paragraph(tag.text)
        elif tag.name == 'h1':
            doc.add_heading(tag.text, level=1)
        elif tag.name == 'h2':
            doc.add_heading(tag.text, level=2)
        elif tag.name == 'h3':
            doc.add_heading(tag.text, level=3)
        elif tag.name == 'ul':
            for li in tag.find_all('li'):
                doc.add_paragraph(li.text, style='List Bullet')
        elif tag.name == 'ol':
            for li in tag.find_all('li'):
                doc.add_paragraph(li.text, style='List Number')
    
    # 保存 docx 文件
    docx_file = os.path.splitext(os.path.basename(html_file))[0] + '.docx'
    docx_path = os.path.join(docx_save_path, docx_file)
    doc.save(docx_path)
    
    print(f'Processed {html_file} and saved as {docx_path}')

这段代码使用 BeautifulSoup 库来解析 HTML 文件,并使用 docx 库来创建和保存 docx 文件。我们还使用了 glob 库来获取所有 HTML 文件的路径,然后循环处理每个 HTML 文件。

在循环中,我们首先打开 HTML 文件并使用 BeautifulSoup 库解析它。然后,我们创建一个新的 docx 文档,并循环处理每个 HTML 标签。对于每个标签,我们将其转换为 docx 格式并添加到文档中。

最后,我们使用 os 库来确定 docx 文件的保存路径,并将文档保存为 docx 文件。在保存每个文件后,我们打印一条消息以指示处理已完成。

请注意,这段代码假定 HTML 文件中只包含 p、h1、h2、h3、ul 和 ol 标签。如果您的 HTML 文件包含其他标签,请相应地修改代码以适应您的文件。

Python 批量处理 HTML 文件并保存为 DOCX 文件

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

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