1

我有一个小 Python 脚本,我用它来下载一大堆 PDF 文件进行归档。我遇到的问题是,当我下载文件时,它们在正确的标题下正确显示,但它们的大小错误,Acrobat 无法打开它们,失败并显示错误消息Out of memoryInsufficient data for an image其他任意 Acrobat 错误. 在文本编辑器中查看页面的内容看起来有点像 PDF 文档,我的意思是它通常是难以理解的,但有一些文本和标记片段,包括 PDF 标识符。

下载文件的代码是这样的:

def download_file( file_id):
    folder_path = ".\\pdf_files\\"
    file_download="http://myserver/documentimages.asp?SERVICE_ID=RETRIEVE_IMAGE&documentKey="    
    file_content = urllib.urlopen(file_download+file_id, proxies={})
    file_local = open( folder_path + file_id + '.pdf', 'w' )
    file_local.write(file_content.read())
    file_content.close()
    file_local.close()

如果通过浏览器下载相同的文件,它看起来很好,但在磁盘上也更大。我猜这个问题可能与保存文件时的编码有关?

4

1 回答 1

4

您需要将其编写为二进制文件,以便:

file_local = open( folder_path + file_id + '.pdf', 'wb' )

于 2012-06-20T15:16:23.573 回答