使用Python轻松拆分PDF,每页独立成文件 🎉
嗨,各位PDF爱好者!📚 如果你曾经有想要拆分一个大PDF文件的想法,让每一页都成为独立的文件,那么这篇博客就是为你准备的!我们将使用Python中的一个非常强大的库--PyPDF2,把这些需求变得简单易行。
PyPDF2登场 🎭
首先,我们需要安装PyPDF2库。如果你还没有安装,别担心,只需要在终端运行以下命令:
bash
pip install PyPDF2
安装好了吗?下面我们就来coding了!
代码实现
这里有一段简单的Python代码,它能帮你分割PDF文件并保存成多个单页PDF。代码很简洁明了,让我们一块看看:
python
import os
from PyPDF2 import PdfReader, PdfWriter
def split_pdf(input_pdf, output_folder):
"""
将输入的 PDF 文件拆分成单页 PDF 文件
参数:
input_pdf: 输入的 PDF 文件路径
output_folder: 输出目录
"""
# 确保输出文件夹存在
if not os.path.exists(output_folder):
os.makedirs(output_folder)
# 获取文件名(不含扩展名)
file_name = os.path.splitext(os.path.basename(input_pdf))[0]
# 读取 PDF 文件
reader = PdfReader(input_pdf)
total_pages = len(reader.pages)
print(f"开始拆分 PDF 文件 '{input_pdf}',共 {total_pages} 页...")
# 逐页拆分
for page_num in range(total_pages):
writer = PdfWriter()
writer.add_page(reader.pages[page_num])
output_filename = f"{file_name}_page_{page_num + 1:03d}.pdf"
output_path = os.path.join(output_folder, output_filename)
with open(output_path, "wb") as output_file:
writer.write(output_file)
print(f"已保存第 {page_num + 1} 页到 '{output_filename}'")
print(f"PDF 拆分完成!所有页面已保存到目录 '{output_folder}'")
def main(input_pdf):
output_folder = "output" # 设定输出目录为output
split_pdf(input_pdf, output_folder)
if __name__ == '__main__':
main("te.pdf") # 使用你要拆分的PDF文件路径
解读代码 🤔
-
导入必要模块:
os
: 用于操作路径。PyPDF2
: 核心库,用于PDF的读写。
-
split_pdf 函数:
- 参数
input_pdf
是你想要拆分的PDF的路径,output_folder
是你希望保存分割后文件的目录。 - 确保输出目录存在,如果不存在则创建它。
- 使用
PdfReader
读取PDF文件。 - 获取文件的页数并开始逐页写入新的单页PDF。
- 参数
-
主程序:
- 设置输出目录。
- 调用
split_pdf
函数对指定的PDF文件进行拆分。
使用方法
将代码保存为一个.py
文件,并在合适的环境(如命令行或IDE)中运行。记得将main
函数中的"te.pdf"
替换为你实际要处理的PDF文件路径哦!✍️
这就是全部了!这样一个简单的脚本,现在你就可以开始拆分你的PDF文件啦!如果你觉得有用或者有任何疑问,欢迎留言讨论!希望这篇文章能让你的生活更高效!🌟📄
Happy Coding! 🤓