我想让机器人每小时获取一个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()

07-26 06:39