Skip to main content
 首页 » 编程设计

python之python 文件下载不完整

2025年05月04日6birdshome

我有以下 python 代码:

import urllib2 
DIR = '/home/aaron/Desktop/aaron-file/media/' 
LOC = DIR+'/'+bounty.title+'.mp3' 
 
u = urllib2.urlopen(url, 'rb') 
localFile = open(LOC, 'wb') 
localFile.write(u.read()) 
localFile.close() 
u.close() 

它只创建小文件(大约 60kb 文件),文件正常运行接受突然停止。当我从 firefox 下载(复制并粘贴相同的 url)时,我得到了完整大小的文件(大约 2mb)。

我正在运行 32 位 ubuntu。

更新: 我认为 http 内容长度不准确可能是个问题。那我怎么会忽略/设置不同的长度。

谢谢。

请您参考如下方法:

也许您正在下载的服务器拒绝 urllib2 默认用户代理。考虑使用伪造的用户代理 header 构建自定义开启器,如下所示:

opener = urllib2.build_opener() 
opener.addheaders = [('User-agent', 'Mozilla/5.0')] 

并使用 opener() 而不是 urllib2.urlopen()