微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 PDF 中提取图像及其关联的 url

如何解决从 PDF 中提取图像及其关联的 url

我有要从中提取图像的 PDF 文件,其中一些图像还具有与之关联的网址。

我可以用

提取网址
@keyframes 
autoplay {  
  0%,15% {
 left: 0px;
}
  25%,40% {
 left: -1920px;
}
  50%,65% {
 left: -3840px;
}
  100% {
 left: -5760px;
}

并且我知道每个 url 都有一个关联的矩形(例如,import pikepdf file = "testPDF.pdf" pdf_file = pikepdf.Pdf.open(file) urls = [] # iterate over PDF pages for page in pdf_file.pages: if page.get("/Annots") is not None: for annots in page.get("/Annots"): uri = annots.get("/A").get("/URI") if uri is not None: if re.search("facebook|twitter",str(uri)): print("[+] URL Found:",uri) urls.append(uri) 返回一个带有 pdf_file.pages[2].get("/Annots")[0].get("/Rect") 的数组,我认为它是链接的坐标(作为一个不可见的矩形)。

我可以用 [ Decimal('64.554153'),Decimal('697.37781'),Decimal('346.79092'),Decimal('760.43066') ] 单独提取图像:

fitz

然而,当我检查图像时,例如 import fitz file = "testPDF.pdf" doc = fitz.open(file) for i in range(len(doc)): for img in doc.getPageImageList(i): xref = img[0] pix = fitz.pixmap(doc,xref) if pix.n < 5: # this is GRAY or RGB pix.writePNG("p%s-%s.png" % (i,xref)) else: # CMYK: convert to RGB first pix1 = fitz.pixmap(fitz.csRGB,pix) pix1.writePNG("pp%s-%s.png" % (i,xref)) pix1 = None pix = None ,x 和 y 位置始终为 0。

有没有办法将图片链接匹配?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。