我想从Web服务器获取响应代码,但有时即使页面不存在并且我也不知道如何处理它,我仍然获得代码200。
我正在使用以下代码:
def checking_url(link):
try:
link = urllib.request.urlopen(link)
response = link.code
except urllib.error.HTTPError as e:
response = e.code
return response
当我检查这样的网站时: https://www.wykop.pl/notexistlinkkk/
即使该页面不存在,它仍然返回代码200。 有什么解决办法吗?
我找到了解决方案,现在可以在更多网站上进行测试 我必须使用http.client。
答案 0 :(得分:1)
您正在获取响应代码200,因为您正在检查的网站具有自动重定向。在您提供的URL中,即使您指定了不存在的页面,它也会自动将您重定向到主页,而不是返回404状态代码。您的代码可以正常工作。
答案 1 :(得分:0)
import urllib2
thisCode = None
try:
i = urllib2.urlopen('http://www.google.com')
thisCode = i.code
except urllib2.HTTPError, e:
thisCode = e.code
print thisCode