当前位置: 首页 > article >正文

python -从文件夹批量提取pdf文章的第n页,并存储起来

python -从文件夹批量提取pdf文章的第n页,并存储起来

废话不多说,看下面代码

讲解一下下面代码

reader = PyPDF2.PdfReader (file)
将文件转化为PdfReader 对象,方便使用内置方法。
first_page = reader.pages[0]
提取第一页

writer = PyPDF2.PdfWriter ()
writer.add_page (first_page)
writer.write(output_file)
将代码写入对应位置

def process_folder(folder_path):
    # 遍历文件夹中的所有文件
    for filename in os.listdir(folder_path):
        if filename.endswith('.pdf'):
            pdf_path = os.path.join(folder_path, filename)
            print(pdf_path)
            output_path = os.path.join('D:\data\pdf_output', filename[0:-4]+'(首页)'+'.pdf')
            # 提取第一页并保存为同名文件
            extract_first_page(pdf_path, output_path)
            print(f"Processed {filename}")

读取某个文件夹下的所有pdf文件,并调用函数取出第一页,并写下来。

import os
import PyPDF2

def extract_first_page(pdf_path, output_path):
    # 打开PDF文件
    with open(pdf_path, 'rb') as file:
        reader = PyPDF2.PdfReader (file)
        # 获取第一页
        first_page = reader.pages[0]
        # 写入新PDF文件
        with open(output_path, 'wb') as output_file:
            writer = PyPDF2.PdfWriter ()
            writer.add_page (first_page)
            writer.write(output_file)

def process_folder(folder_path):
    # 遍历文件夹中的所有文件
    for filename in os.listdir(folder_path):
        if filename.endswith('.pdf'):
            
            pdf_path = os.path.join(folder_path, filename)
            print(pdf_path)
            output_path = os.path.join('D:\data\pdf_output', filename[0:-4]+'(首页)'+'.pdf')
            # 提取第一页并保存为同名文件
            extract_first_page(pdf_path, output_path)
            print(f"Processed {filename}")

# 指定你的文件夹路径
folder_path = 'D:\data\pdf'
process_folder(folder_path)

http://www.kler.cn/a/414177.html

相关文章:

  • git的使用(简洁版)
  • C语言中的指针的解读和强大功能
  • 第T9周:Tensorflow实现猫狗识别(2)
  • 【书生浦语实战营-提示词工程实践】基础闯关任务
  • PHP 循环 - For 循环
  • Day51 | 动态规划 :区间DP 最长回文子序列多边形三角部分的最低得分
  • 使用 Python 剪辑视频的播放速度
  • 四足机器人单腿逆运动学几何计算
  • 在React中实践一些软件设计思想 ✅
  • 百度 文心一言 vs 阿里 通义千问 哪个好?
  • Spring JDBC 和 事务控制——(1)
  • Z2400027基于Java+SpringBoot+Mysql+thymeleaf引擎的图书馆管理系统的设计与实现 代码 论文
  • 【Maven】功能和核心概念
  • 透视投影(Perspective projection)与等距圆柱投影(Equirectangular projection)
  • flink学习(11)——state
  • 误使用git stash drop删掉本地保存,如何恢复
  • 51单片机从入门到精通:理论与实践指南常用资源篇(四)
  • C++ 基础04
  • 深入解析 Canny 边缘检测:原理、步骤与实践应用全攻略
  • Redis的基础知识·