Python - AI 助手

Python Requests head() 方法



Python Requests 的head()方法向指定的URL傳送HTTP HEAD請求。HEAD請求類似於GET請求,但它只檢索響應的頭資訊,而不檢索響應的主體。

這對於檢查資源元資料(例如大小或修改日期)非常有用,無需下載整個內容。典型的用例包括檢查資源是否存在或在決定發出完整的GET請求之前檢索頭資訊。

requests.head()的語法和可選引數類似於requests.get(),允許使用頭資訊、身份驗證、超時等進行自定義。

語法

以下是Python Requests head()方法的語法和引數:

requests.head()

引數

此函式不接受任何引數。

返回值

此方法返回響應物件。

示例 1

以下是一個基本示例,它使用python requests head()方法向指定的URL傳送簡單的HEAD請求,並列印狀態碼和頭資訊:

import requests
response = requests.head('https://tutorialspoint.tw/')
print(response.status_code)
print(response.headers) 

輸出

403
{'Cache-Control': 'max-age=2592000', 'Content-Type': 'text/html; charset=iso-8859-1', 'Date': 'Mon, 24 Jun 2024 10:34:00 GMT', 'Expires': 'Wed, 24 Jul 2024 10:34:00 GMT', 'Server': 'Apache/2.4.59 (Ubuntu)', 'Strict-Transport-Security': 'max-age=63072000; includeSubDomains', 'X-Content-Type-Options': 'nosniff', 'X-Frame-Options': 'SAMEORIGIN', 'X-Version': 'OCT-10 V1', 'Transfer-Encoding': 'chunked', 'Connection': 'close'}

示例 2

如果我們想使用Python中的requests模組傳送帶有引數的HEAD請求,我們可以使用params引數透過URL查詢字串傳遞引數。此示例在HEAD請求中包含URL引數:

import requests

# Define the URL
url = 'https://httpbin.org/headers'

# Define the parameters
params = {'param1': 'value1', 'param2': 'value2'}

# Send the HEAD request with parameters
response = requests.head(url, params=params)

# Print the response status code
print('Status Code:', response.status_code)

# Print the response headers
print('Response Headers:', response.headers)

輸出

Status Code: 200
Response Headers: {'Date': 'Mon, 24 Jun 2024 10:39:18 GMT', 'Content-Type': 'application/json', 'Content-Length': '235', 'Connection': 'keep-alive', 'Server': 'gunicorn/19.9.0', 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Credentials': 'true'}

示例 3

使用Python中的requests模組傳送HEAD請求時,務必處理請求過程中可能發生的潛在錯誤。這是一個處理HEAD請求錯誤的示例:

import requests

# Define the URL
url = 'https://httpbin.org/headers'

# Define the parameters
params = {'param1': 'value1', 'param2': 'value2'}

try:
    # Send the HEAD request with parameters
    response = requests.head(url, params=params)

    # Check if the request was successful (status code 2xx)
    if response.ok:
        # Print the response headers
        print('Response Headers:', response.headers)
    else:
        # Print an error message with the status code
        print('Error:', response.status_code)

except requests.Timeout:
    # Handle timeout error
    print('Timeout Error: Request timed out.')

except requests.RequestException as e:
    # Handle other request exceptions
    print('Request Exception:', e)

輸出

Response Headers: {'Date': 'Mon, 24 Jun 2024 10:42:30 GMT', 'Content-Type': 'application/json', 'Content-Length': '235', 'Connection': 'keep-alive', 'Server': 'gunicorn/19.9.0', 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Credentials': 'true'}
python_modules.htm
廣告 (guǎnggào)