本帖最后由 hanloth 于 2023-5-17 22:59 编辑
提供几个函数
首先import必要模块
[Python] 纯文本查看 复制代码 from typing import List
from PyPDF2 import PdfFileMerger
import os
[Python] 纯文本查看 复制代码
def scan_files(path, suffix):
"""
扫描指定目录下所有的指定后缀名的文件
:param path: 扫描路径
:param suffix: 后缀名,传入的参数类似".png|.jpg"
:return: 所有匹配项所在的目录(不含后缀)
"""
files = []
suffix_list = suffix.split("|")
path = os.path.abspath(path)
for root, dirs, filenames in os.walk(path):
for filename in filenames:
if any(filename.endswith(suffix) for suffix in suffix_list):
file_path = os.path.join(root, filename)
file_name = os.path.splitext(filename)[0]
files.append(os.path.abspath(os.path.dirname(file_path)))
return files
以上是扫描文件的代码
[Python] 纯文本查看 复制代码 def combine_to_pdf(file_paths, output_path):
"""
将多个 PDF 文件合并为单个 PDF 文件
Args:
file_paths (List[str]): 需要合并的 PDF 文件路径列表
output_path (str): 合并后的文件输出路径
Returns:
None
"""
pdf_merger = PdfFileMerger()
# 循环添加文件
for path in file_paths:
with open(path, 'rb') as f:
pdf_merger.append(f)
# 将合并后的内容输出到 PDF 文件
with open(output_path, 'wb') as f:
pdf_merger.write(f)
以上是合并为pdf的代码
|