我某处有一个大文件(FTP / HTTP)。
我想
N
个字节,这绝对不是我想象的那么简单的任务(令我惊讶)。即使从外部调用wget
/ curl
也似乎不是一个好的解决方案(也许我忽略了正确的命令行选项)。
如何在Python中尽可能简单地完成这项工作?
我正在考虑ftp.retrbinary
的自定义处理程序,只要块的总和超过定义的值就会引发异常,但这在我看来太过分了。 Python代码应该很优雅,对吧?
答案 0 :(得分:2)
如果您只想检查标题,请发送 HTTP Head ,而不是GET。 它将返回与GET相同的标题,没有消息正文。
HEAD方法与GET相同,只是服务器不能 在响应中返回一个消息体。元信息包含 在HTTP头中响应HEAD请求应该是相同的 响应GET请求而发送的信息。
HEAD可以按详细here发送。
修改强>
如果确实需要前N个字节,可以将urllib2
与Range header. Range: bytes=0-N
结合使用。