如何使用python更改pdf内的超链接?

时间:2017-07-19 12:52:33

标签: python pdf hyperlink

如何使用python更改pdf中的超链接?我目前正在使用pyPDF2打开并遍历页面。我如何实际扫描超链接,然后继续更改超链接?

1 个答案:

答案 0 :(得分:1)

所以我无法使用https://godbolt.org/g/Et56cm库获得您想要的内容。

然而,我确实得到了与另一个图书馆合作的内容:pyPDF2。在Python 3.6中使用pip为我安装好了:

import pdfrw

pdf = pdfrw.PdfReader("pdf.pdf") #Load the pdf
new_pdf = pdfrw.PdfWriter() #Create an empty pdf

for page in pdf.pages: #Go through the pages
    for annot in page.Annots or []: #Links are in Annots, but some pages
                                    #don't have links so Annots returns None
        old_url = annot.A.URI

        #>Here you put logic for replacing the URLs<

        #Use the PdfString object to do the encoding for us.
        # Note the brackets around the URL here.
        new_url = pdfrw.objects.pdfstring.PdfString("(http://www.google.com)")

        #Override the URL with ours.
        annot.A.URI = new_url

    new_pdf.addpage(page)    

new_pdf.write("new.pdf")

注意:对于以下内容,我一直在使用pdfrw我在网上找到了包含多个链接的内容。您的里程可能因此而异。

{{1}}