首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用apache-tika和python从PDF中提取内联图像

使用apache-tika和python从PDF中提取内联图像
EN

Stack Overflow用户
提问于 2019-05-08 16:09:37
回答 1查看 1.4K关注 0票数 2

我需要将PDF文档转换为XML或JSON格式,包括内联图像。

到目前为止,我能够使用python-tika库生成XML。要进行复制,请使用带有内联图像的测试PDF文档,并通过python-tika模块提取:

代码语言:javascript
复制
from tika import parser
xml_data = parser.from_file('test.pdf', xmlContent=True)
print(xml_data)

XML输出包含指向“嵌入”图像的链接,如下所示:

代码语言:javascript
复制
<img src="embedded:image0.png" alt="image0.png" />

但是,我不明白图像是如何作为适当的部分嵌入的,因为XML看起来像这样:

代码语言:javascript
复制
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="Compression Lossless" content="true" />
<meta name="Dimension PixelAspectRatio" content="1.0" />
<meta name="tiff:ImageLength" content="833" />
<meta name="height" content="833" />
<meta name="pHYs" content="pixelsPerUnitXAxis=2835, pixelsPerUnitYAxis=2835, unitSpecifier=meter" />
<meta name="tiff:ImageWidth" content="1177" />
<meta name="Chroma BlackIsZero" content="true" />
<meta name="resourceName" content="image0.png" />
<meta name="Dimension VerticalPixelSize" content="0.35273367" />
<meta name="Data BitsPerSample" content="8 8 8" />
<meta name="tiff:BitsPerSample" content="8 8 8" />
<meta name="width" content="1177" />
<meta name="PLTE PLTEEntry" content="index=0, red=255, green=255, blue=255" />
<meta name="PLTE PLTEEntry" content="index=1, red=254, green=254, blue=254" />
<meta name="PLTE PLTEEntry" content="index=2, red=253, green=253, blue=253" />
<meta name="PLTE PLTEEntry" content="index=3, red=251, green=251, blue=251" />
...

有谁知道如何将这些嵌入的代码转换成实际的图像?我想将图像保存到文件系统中,名为"image0.png“、"image1.tiff”等等。

EN

回答 1

Stack Overflow用户

发布于 2020-03-29 15:02:11

尝试导入tika的解包功能。

代码语言:javascript
复制
from tika import unpack

image = unpack.from_file(file, serverEndpoint="http://localhost:9998")

响应应该有一个“attachment”键。这是存储图像的位置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56036233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档