Я пытаюсь использовать следующий код для извлечения места назначения или URI гиперссылки в файле PDF через PyPDF2, но я столкнулся с некоторыми закодированными местами назначения. Я пытался распаковать их на filter.decodeStreamData()
; однако мой результат все еще не читается :(
Я не могу решить проблему, пожалуйста, помогите.
import PyPDF2
import zlib
from PyPDF2 import filters
PDFFile = open()
PDF = PyPDF2.PdfFileReader(PDFFile)
pages = PDF.getNumPages()
annotatn = '/Annots'
hyperlink = '/A'
ob = {'/URI', '/D'}
for page in range(pages):
print("Current Page: {}".format(page+1))
pageSliced = PDF.getPage(page)
pageObject = pageSliced.getObject()
if annotatn in pageObject.keys():
i = 0
for annot in pageObject[annotatn]:
i = i + 1
print("Link {}".format(i))
ann = annot.getObject()
if '/Dest' in ann.keys():
dest = ann['/Dest'][0].getObject()
data = dest['/Contents'].getObject()
s = data._data
contnt = filters.decodeStreamData(data)
if hyperlink in ann.keys():
links = ann[hyperlink]
for link in links:
if link in ob:
print(ann[hyperlink][link])