2024-05-23 13:38:53 发布
网友
>>> a=urllib.urlopen('http://www.domain.com/bigvideo.avi') >>> a.getcode() 404 >>> a=urllib.urlopen('http://www.google.com/') >>> a.getcode() 200
我的问题是。。。大视频.avi是500MB。我的脚本是否先下载文件,然后检查它?或者,它可以在不保存文件的情况下立即检查错误代码吗?在
我想你的代码已经做到了。 您从来没有对响应调用read()方法,因此您从未实际下载文件的内容。在
更好的是。。。可以使用httplib发送httphead请求,而不是像urllib代码那样执行httpget。在
是的,它将获取文件。在
我认为您真正想要做的是发送一个httphead请求(它基本上不是向服务器请求数据本身,而是只请求头)。你可以看here。在
您需要实际告诉服务器而不是发送文件的完整内容。HTTP有一种称为“HEAD”的机制来代替“GET”。它的工作原理是一样的,但是服务器只向您发送标题,而不是实际的内容。在
这样至少可以节省一个带宽,而只需不执行read()操作就不会麻烦您获取完整的文件。在
试试这个:
import httplib c = httplib.HTTPConnection(<hostname>) c.request("HEAD", <url>) print c.getresponse().status
将打印状态代码。Url只能是一个段,如“/foo”,主机名应该是“,”www.example.com网站". 在
我想你的代码已经做到了。 您从来没有对响应调用read()方法,因此您从未实际下载文件的内容。在
更好的是。。。可以使用httplib发送httphead请求,而不是像urllib代码那样执行httpget。在
是的,它将获取文件。在
我认为您真正想要做的是发送一个httphead请求(它基本上不是向服务器请求数据本身,而是只请求头)。你可以看here。在
您需要实际告诉服务器而不是发送文件的完整内容。HTTP有一种称为“HEAD”的机制来代替“GET”。它的工作原理是一样的,但是服务器只向您发送标题,而不是实际的内容。在
这样至少可以节省一个带宽,而只需不执行read()操作就不会麻烦您获取完整的文件。在
试试这个:
将打印状态代码。Url只能是一个段,如“/foo”,主机名应该是“,”www.example.com网站". 在
相关问题 更多 >
编程相关推荐