百度你能靠谱一点吗?
写个test_link的脚本,想要只获取http头部来测试链接是否失效。想着国内百度连接速度快些吧,于是用百度测试。。
assert(test_link(“http://baidu.com/xyz") == False)
结果。。百度返回的头居然是:
Request URL:http://www.baidu.com/xyz Request Method:GET Status Code:302 Found Response Headers Cache-Control:max-age=86400 Connection:Keep-Alive Content-Length:222 Content-Type:text/html; charset=iso-8859-1 Date:Mon, 28 Mar 2011 11:22:25 GMT Expires:Tue, 29 Mar 2011 11:22:25 GMT Location:http://www.baidu.com/search/error.html Server:Apache
好吧。。。302就302吧,我们看看后面的这个http://www.baidu.com/search/error.html是什么
Request URL:http://www.baidu.com/search/error.html Request Method:GET Status Code:200 OK
喂喂,你这明显是error啊,200是怎么回事啊!明明页面上写着
您要访问的页面不存在
返回一个200到底是怎么回事啊!难道就不能返回个404让爬虫知道吗?
百度明明是个搜索引擎,写出来的网页就让自己认识是吗。。
google就明明白白地返回一个
Request URL:http://www.google.com/xyz Request Method:GET Status Code:404 Not Found
类似的页面还有:
http://www.baidu.com/forbiddenip/forbidden.html
百度你还能再靠谱一点吗?