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

邯郸营销网站建设流媒体网站开发

邯郸营销网站建设,流媒体网站开发,阎良做网站的公司,网站建站报告在处理大型PDF文件时,将它们分解成更小、更易于管理的块通常是有益的。这个过程称为分区,它可以提高处理效率,并使分析或操作文档变得更容易。在本文中,我们将讨论如何使用Python和为Unstructured.io库将PDF文件划分为更小的部分。…

在处理大型PDF文件时,将它们分解成更小、更易于管理的块通常是有益的。这个过程称为分区,它可以提高处理效率,并使分析或操作文档变得更容易。在本文中,我们将讨论如何使用Python和为Unstructured.io库将PDF文件划分为更小的部分。

我们将使用两个Python库来完成此任务:

  • PyPDF2:一个可以读、写、合并和分割PDF文件的库。
  • Unstructured.io:一个可以使用文档图像分析模型分割PDF文档的库。

在这里插入图片描述

下面是完成这个任务的Python代码:

from PyPDF2 import PdfReader, PdfWriter
from unstructured.partition.pdf import partition_pdfimport os
from os import path# Create the output directory if it doesn't exist
# os.makedirs('./output', exist_ok=True)
path = path.abspath(path.dirname(__file__))# pdf_file = path + '/sample01.pdf'filename =  path + "/sample02.pdf"# Read the original PDF
input_pdf = PdfReader(f'{filename}')batch_size = 2
num_batches = len(input_pdf.pages) // batch_size + 1filename = path + "/output" 
# Extract batches of 100 pages from the PDF
for b in range(num_batches):writer = PdfWriter()# Get the start and end page numbers for this batchstart_page = b * batch_sizeend_page = min((b+1) * batch_size, len(input_pdf.pages))# Add pages in this batch to the writerfor i in range(start_page, end_page):writer.add_page(input_pdf.pages[i])# Save the batch to a separate PDF filebatch_filename = f'{filename}-batch{b+1}.pdf'with open(batch_filename, 'wb') as output_file:writer.write(output_file)# Now you can use the `partition_pdf` function from Unstructured.io to analyze the batchelements = partition_pdf(filename=batch_filename)print(elements)# Do something with `elements`...# This will process without issue# 抽取表格数据elements = partition_pdf("copy-protected.pdf", strategy="hi_res")

第一步:读PDF文件

首先,我们从PyPDF2库导入必要的类:PdfReader和PdfWriter。PdfReader类用于读取原始PDF文件,该文件存储在名为“exam-prep”的子目录中。

步骤2:分区PDF

我们决定批大小,即PDF的每个块将包含的页数。在本例中,我们选择了100页的批处理大小,但这可以根据您的需要进行调整。

然后通过将PDF中的总页数除以批大小来计算批数量。添加1以确保在页面总数不是批大小的倍数时捕获所有剩余页面。

步骤3:写PDF块

接下来,循环遍历每个批处理,为每个批处理创建一个新的PdfWriter对象。对于每个批处理,我们计算起始页码和结束页码,并使用add_page方法将该范围内的每个页码添加到PdfWriter。

一旦添加了批处理的所有页面,我们将它们写入‘output’子目录下的新PDF文件中。每个块的文件名包括原始文件名和批号。

步骤4:分析PDF块

将PDF分成更小的块后,现在可以使用来自非结构化的partition_pdf函数。IO库来分析每个批处理。该函数使用文档图像分析模型对PDF文档进行分段,并返回已解析PDF文档页面中出现的元素列表。

最后总结

将大型PDF文件划分为更小的块可以使它们更容易、容错和消耗更少的内存。

http://www.dtcms.com/wzjs/839471.html

相关文章:

  • 佛山移动网站设计网站建设基本流程图片
  • 网站建设需要哪些工具与知识ui设计是学什么的
  • 网站开发入门培训机构国内精自线一二区网页版
  • 开发 必知 网站冠辰网站
  • 模板王网站怎么下载不了模板网站建设的各个环节
  • 网站百度统计表格怎么做wordpress 多余p标签
  • 羊毛网站建设视频网站全是乱码
  • 微信授权登录网站退出怎么做网站建设 开题报告
  • 做旅行社的都是在哪网站拿票企业网站备案策划
  • 乐陵网站优化wordpress怎么去掉
  • 做网站标志过程各大网站投稿方式
  • 网站开发后端开发住房及城乡建设部信息中心网站
  • 什么网站利于优化开了网站建设公司 如何接业务
  • 安全的网站建柳州网站建设价格
  • 建设 春风 摩托车官方网站云南信息发布平台
  • 网站多语言建设方案wordpress 类似的
  • ps做网站首页一键logo设计app
  • 网站开发网站建站网站看看
  • 手机网站建设一般多少钱wordpress首页无法看到后台登录
  • 北京 网站开发自己怎么设计公众号
  • 做网站的公司赚钱吗肥西县重点工程建设管理局网站
  • 昆明网站开发培训免费网站制作报价
  • 特价做网站做淘宝客如何建立网站
  • 论坛网站制作顺企网官网电话
  • 如何制作好自己的网站官渡区住房和城乡建设局网站
  • 免费软件下载网站免费软件下载网站企业网站后台源代码
  • 网站建设硬件设计方案抚州网络推广
  • 网站制作需要哪些软件云南住建局和城乡建设官网
  • 做亚马逊网站费用吗网页下载链接怎么做
  • 宁德企业网站建设为什么wordpress有cookies