写一段python代码批量处理HTML文件另存为docx文件
以下是一段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文件包含其他标签,请相应地修改代码以适应您的文件。
原文地址: http://www.cveoy.top/t/topic/bY63 著作权归作者所有。请勿转载和采集!