我正在编写一个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不会出错/损坏。
感谢。
答案 0 :(得分:3)
将'w'
替换为'wb'
open(pdfName, 'w')
答案 1 :(得分:3)
您正在编写二进制信息,就好像它是非二进制信息一样。
f = open(pdfName,'wb')
应该这样做。