AI办公自动化-用kimi批量加密PDF文件

部落人有文化 2024-05-18 11:24:12

在kimichat中输入提示词:

你是一个Python编程专家,要完成一个编写Python脚本的任务,具体步骤如下:

联网检索PyPDF2库的最新使用方法;

打开文件夹:D:\2024-05

读取里面所有的PDF文件;

用PyPDF2库将每个PDF文件设置打开密码为:888;

加密的PDF文件名末尾加上“_文件已经加密”;

注意:每一步都要输出相关信息到屏幕上;

如果有加密的PDF文件,就跳过,然后处理下一个;

运行程序,出错了,让kimi修正,

kimichat生成的Python源代码:

import PyPDF2

import os

# 定义文件夹路径

folder_path = "D:\\2024-05"

# 定义打开密码

password = "888"

# 输出联网检索到的PyPDF2库使用方法信息

print("PyPDF2库使用方法摘要:")

print("1. 使用PdfReader对象读取PDF文件。")

print("2. 使用PdfWriter对象写入和加密PDF文件。")

print("3. 通过PdfWriter对象的encrypt方法设置密码。")

print("4. 使用PdfWriter对象的write方法保存修改后的PDF文件。")

# 遍历文件夹中的所有文件

for filename in os.listdir(folder_path):

# 检查文件扩展名是否为PDF

if filename.lower().endswith(".pdf"):

print(f"正在检查文件:{filename}")

# 构造完整的文件路径

pdf_path = os.path.join(folder_path, filename)

# 尝试打开PDF文件

try:

# 创建PDF阅读器对象

with open(pdf_path, 'rb') as file:

reader = PyPDF2.PdfReader(file)

# 使用新的方法is_encrypted属性检查PDF文件是否已加密

if reader.is_encrypted:

print(f"跳过已加密的文件:{filename}")

continue # 跳过加密的文件

# 创建PDF写入器对象

writer = PyPDF2.PdfWriter()

# 将页面从阅读器复制到写入器

for page in reader.pages:

writer.add_page(page)

# 使用PdfWriter对象的encrypt方法设置密码

writer.encrypt(user_pwd=password)

# 构造加密后的文件名

encrypted_filename = filename.rstrip(".pdf") + "_文件已经加密.pdf"

encrypted_path = os.path.join(folder_path, encrypted_filename)

# 使用PdfWriter对象的write方法保存修改后的PDF文件

with open(encrypted_path, 'wb') as out_file:

writer.write(out_file)

print(f"文件已加密:{encrypted_filename}")

except Exception as e:

print(f"处理文件出错:{filename}, 错误信息:{e}")

print("所有PDF文件处理完毕。")

0 阅读:0

部落人有文化

简介:感谢大家的关注