吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3140|回复: 21
收起左侧

[Python 转载] 【AI原创】PDF批量删除指定页面小工具

[复制链接]
shuai21886 发表于 2023-6-7 00:15
本帖最后由 shuai21886 于 2023-6-7 13:00 编辑

最近下载了一堆研报,但是里面都带广告,想着怎么批量删除,网上没找到合适的工具。
听说Chatgpt写代码很厉害,想着能不能让它帮我实现这个功能。        
然后,通过一顿操作之后居然真的实现了。。。连怎么封装成exe文件都实现了,这也泰裤辣!!        
说明:软件是由Chatgpt3.5生成的,大约花了2-3小时实现。经过测试Chatgpt3.5调用库的用法有的没有更新,测试Chatgpt4.0调用PyPDF2的用法没有问题。但由于没有会员,免费Chatgpt4.0有使用次数,最后面还是通过Chatgpt3.5完成的。
声明:本人并不是程序员,只懂一点简单的编程基础。
兄弟们,只能说科技改变生活,这么好的工具还不用起来!!        
以下是AI做出的最后成品:
最后的源代码:
[Python] 纯文本查看 复制代码
# -*- coding: utf-8 -*-

import tkinter as tk
from tkinter import filedialog
from PyPDF2 import PdfReader, PdfWriter
import os


def select_input_folder():
    folder_path = filedialog.askdirectory()
    input_folder_entry.delete(0, tk.END)
    input_folder_entry.insert(0, folder_path)


def select_output_folder():
    folder_path = filedialog.askdirectory()
    output_folder_entry.delete(0, tk.END)
    output_folder_entry.insert(0, folder_path)


def delete_pages():
    input_folder = input_folder_entry.get()
    output_folder = output_folder_entry.get()

    # 创建输出文件夹
    os.makedirs(output_folder, exist_ok=True)

    # 获取输入文件夹中的所有PDF文件
    pdf_files = [f for f in os.listdir(input_folder) if f.endswith('.pdf')]

    # 遍历每个PDF文件进行转换
    for file_name in pdf_files:
        input_file = os.path.join(input_folder, file_name)
        output_file = os.path.join(output_folder, file_name)

        try:
            # 打开PDF文件
            with open(input_file, 'rb') as file:
                reader = PdfReader(file)
                total_pages = len(reader.pages)

                # 指定要删除的页面
                page_to_remove = int(page_to_remove_entry.get())

                # 创建一个新的PDF写入对象
                writer = PdfWriter()

                # 复制除要删除的页面外的所有页面到新的PDF文件中
                for page_num in range(total_pages):
                    if page_num != page_to_remove - 1:
                        writer.add_page(reader.pages[page_num])

                # 保存新的PDF文件
                with open(output_file, 'wb') as output:
                    writer.write(output)
        except Exception as e:
            error_log_text.insert(tk.END, f"转换失败:{file_name}\n")
            error_log_text.insert(tk.END, f"错误信息:{str(e)}\n\n")

    error_log_text.insert(tk.END, "转换完成!")


# 创建主窗口
window = tk.Tk()
window.title("PDF页面删除工具")

# 输入文件夹选择部分
input_folder_label = tk.Label(window, text="输入文件夹:")
input_folder_label.grid(row=0, column=0, padx=10, pady=10, sticky=tk.W)

input_folder_entry = tk.Entry(window, width=40)
input_folder_entry.grid(row=0, column=1, padx=10, pady=10)

input_folder_button = tk.Button(window, text="选择文件夹", command=select_input_folder)
input_folder_button.grid(row=0, column=2, padx=10, pady=10)

# 输出文件夹选择部分
output_folder_label = tk.Label(window, text="输出文件夹:")
output_folder_label.grid(row=1, column=0, padx=10, pady=10, sticky=tk.W)

output_folder_entry = tk.Entry(window, width=40)
output_folder_entry.grid(row=1, column=1, padx=10, pady=10)

output_folder_button = tk.Button(window, text="选择文件夹", command=select_output_folder)
output_folder_button.grid(row=1, column=2, padx=10, pady=10)

# 删除页面部分
page_to_remove_label = tk.Label(window, text="要删除的页面:")
page_to_remove_label.grid(row=2, column=0, padx=10, pady=10, sticky=tk.W)

page_to_remove_entry = tk.Entry(window, width=40)
page_to_remove_entry.grid(row=2, column=1, padx=10, pady=10)

# 删除按钮
delete_button = tk.Button(window, text="运行", command=delete_pages)
delete_button.grid(row=3, column=0, columnspan=3, padx=10, pady=10)

# 错误日志文本框
error_log_text = tk.Text(window, width=60, height=10)
error_log_text.grid(row=4, column=0, columnspan=3, padx=10, pady=10)

# 启动窗口
window.mainloop()




生成的软件360报毒,菜鸟不知道怎么弄,担心中毒的可以使用源码。

下载地址:https://wwtm.lanzoum.com/ieUbP0yiv03c

QQ截图20230607000456.png

免费评分

参与人数 5吾爱币 +5 热心值 +2 收起 理由
wei5383079 + 1 楼主能把chat3.5网址分享一下吗?
Qmomo + 1 + 1 我很赞同!
Lemon1001 + 1 用心讨论,共获提升!
苏紫方璇 + 1 666
xiongyi2 + 1 + 1 热心回复!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

DKBook 发表于 2023-6-7 04:25
厉害,想知道用的Chatgpt哪个版本没我也想装一个了
努力画图 发表于 2023-6-7 06:29
拂你青丝 发表于 2023-6-7 07:33
chayunyuxiang 发表于 2023-6-7 07:35
分享一下你的成品呗
homehome 发表于 2023-6-7 08:32
谢谢楼主,还需要增加PyPDF2这个模块
yu520 发表于 2023-6-7 08:40
这个能进行PDF编辑吗
加奈绘 发表于 2023-6-7 09:00
科技改变生活,只要会引导ai,提出的问题就能很好解决,确实方便你我他
ghwanz 发表于 2023-6-7 10:28
泰酷辣,源码有了,请教一下怎么封装的
梦中之梦 发表于 2023-6-7 11:29
ARCOBAT最好用,PDF24啥的次之
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 19:30

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表