使用Python下载文件只会产生4.1kB的内存
我使用的是简单的代码:使用Python下载文件只会产生4.1kB的内存,python,asp.net-mvc,Python,Asp.net Mvc,我使用的是简单的代码: import urllib2 response = urllib2.urlopen("http://www.mysite.com/getfile/4355") output = open('myfile.zip','wb') output.write(response.read()) output.close() web服务器是IIS+ASP.NET MVC 4 它返回FileResult,该结果包装一个内容类型为“application/octet stream”的z
import urllib2
response = urllib2.urlopen("http://www.mysite.com/getfile/4355")
output = open('myfile.zip','wb')
output.write(response.read())
output.close()
web服务器是IIS+ASP.NET MVC 4
它返回FileResult,该结果包装一个内容类型为“application/octet stream”的zip文件
问题是下载的zip文件被破坏了-只有4.1kB大小,其中必须是24kB。当我直接在web浏览器中键入url地址时,它可以正常下载和打开
你能告诉我,我的Python代码有什么问题吗
编辑
尝试了另外两种方法-相同的结果
import urllib
urllib.urlretrieve(url, targetFile)
h = httplib2.Http(".cache")
response, content = h.request(url)
with open(targetFile, 'wb') as f:
f.write(content)
看看python的“请求”模块。你可以安装它。示例代码为:
>>>import requests
>>>req_obj = requests.get("http://www.myexample.com/myfile.zip")
>>>print len(req_obj)
203456
有关API的更多信息,请参见…在py3k中,您只需使用
urllib.request.urlretrieve(url,文件名)
即可下载以下文件:
import urllib.request
url = 'http://www.example.com/the-file.zip'
urllib.request.urlretrieve(url, 'filename.zip')
这是一个愚蠢的问题,但无论如何:我的控制器上有[Authorize]属性,这样就不能执行匿名请求 删除它只允许我下载文件 无论如何,谢谢你