Gou*_*eau 86
使用精彩请求库进行更新.注意我们正在使用HEAD请求,这应该比完整的GET或POST请求更快地发生.
import requests
try:
    r = requests.head("https://stackoverflow.com")
    print(r.status_code)
    # prints the int of the status code. Find more at httpstatusrappers.com :)
except requests.ConnectionError:
    print("failed to connect")
Eva*_*ark 64
这是一个使用的解决方案httplib.
import httplib
def get_status_code(host, path="/"):
    """ This function retreives the status code of a website by requesting
        HEAD data from the host. This means that it only requests the headers.
        If the host cannot be reached or something else goes wrong, it returns
        None instead.
    """
    try:
        conn = httplib.HTTPConnection(host)
        conn.request("HEAD", path)
        return conn.getresponse().status
    except StandardError:
        return None
print get_status_code("stackoverflow.com") # prints 200
print get_status_code("stackoverflow.com", "/nonexistant") # prints 404
Ric*_*dle 24
您应该使用urllib2,如下所示:
import urllib2
for url in ["http://entrian.com/", "http://entrian.com/does-not-exist/"]:
    try:
        connection = urllib2.urlopen(url)
        print connection.getcode()
        connection.close()
    except urllib2.HTTPError, e:
        print e.getcode()
# Prints:
# 200 [from the try block]
# 404 [from the except block]
将来,对于那些使用python3及更高版本的用户,这里有另一个代码来查找响应代码.
import urllib.request
def getResponseCode(url):
    conn = urllib.request.urlopen(url)
    return conn.getcode()
| 归档时间: | 
 | 
| 查看次数: | 110995 次 | 
| 最近记录: |