使用Python自动下载嵌入的PDF文件

时间:2016-02-19 15:40:45

标签: python url pdf download

我正在编写一个Python脚本来自动下载托管在网站上的一些pdf页面(来自公共领域的工作)。 不幸的是,各个pdf页面嵌入在框架中,当我使用以下内容时:

import time, urllib
for n in range(21,63):
    time.sleep(2)
    pdfPath="http://babel.hathitrust.org/cgi/imgsrv/download/pdf?id=wu.89038803698;orient=0;size=100;seq=%s;attachment=0"%(str(n))
    pdfName="Housner_"+str(n)+".pdf"
    f = open(pdfName, 'w')
    f.write(urllib.urlopen(pdfPath).read())
    f.close()
    time.sleep(2)

下载的文件实际上是空白的,Adobe显示错误,例如找不到无效图像,嵌入字体等。

任何人都可以建议我如何改进此脚本,以便下载的PDF不会出错/损坏。

感谢。

2 个答案:

答案 0 :(得分:3)

'w'替换为'wb'

中的open(pdfName, 'w')

答案 1 :(得分:3)

您正在编写二进制信息,就好像它是非二进制信息一样。

f = open(pdfName,'wb')

应该这样做。