我想让机器人每小时获取一个url,但如果该网站的运营商是恶意的,他可以让他的服务器向我发送一个1gb的文件。有没有一种好的方法可以将下载限制在100kb,并在该限制之后停止?
我可以想象从头开始编写自己的连接处理程序,但如果可能的话,我希望使用urllib2,只是以某种方式指定限制。
谢谢!
最佳答案
这可能就是你要找的:
import urllib
def download(url, bytes = 1024):
"""Copy the contents of a file from a given URL
to a local file.
"""
webFile = urllib.urlopen(url)
localFile = open(url.split('/')[-1], 'w')
localFile.write(webFile.read(bytes))
webFile.close()
localFile.close()