Python:为什么urllib.request.urlopen.read()永远无法完成下载?

Python:为什么urllib.request.urlopen.read()永远无法完成下载?,python,request,Python,Request,我有密码: from urllib.request import urlopen url = 'http://gmsh.info/bin/MacOSX/gmsh-4.5.2-MacOSX-sdk.tgz' sdk = urlopen(url).read() 问题是:为什么下载永远不会结束?链接是正常的,它在浏览器中工作。我尝试设置一些标题,如下所示: from urllib import request req = request.Request(url) req.add_header('us

我有密码:

from urllib.request import urlopen
url = 'http://gmsh.info/bin/MacOSX/gmsh-4.5.2-MacOSX-sdk.tgz'
sdk = urlopen(url).read()
问题是:为什么下载永远不会结束?链接是正常的,它在浏览器中工作。我尝试设置一些标题,如下所示:

from urllib import request
req = request.Request(url)
req.add_header('user-agent', "Mozilla/5.0 (X11; U; Linux i686) Gecko/20071127 Firefox/2.0.0.11")
sdk = request.urlopen(req).read()

但这没用。有什么想法吗?

这是因为文件大小很大,请尝试将其下载到块中。。 如示例所示,它将起作用。。 导入urllib.request filedata=urllib.request.urlopen 区块=1*1024 使用open'test.zip',wb'作为f: 尽管如此: chunk=filedata.readCHUNK 如果不是块: 打破 f、 笔迹

该文件有多大,您等待代码完成的时间有多长?文件大小为c.a.30 MB。过了一会儿,它似乎被下载了,只需阅读永不退出。。。分块下载没有帮助,请参见下面…很好的尝试,但是。。。我将您的代码粘贴到终端,但它并没有完成任务。howewer文件似乎已下载,但不知何故,chunk=filedata.readCHUNK仍然不会在文件末尾返回。