Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan modul permintaan untuk membuat permintaan HTTP dalam Python 3.x

Cara menggunakan modul permintaan untuk membuat permintaan HTTP dalam Python 3.x

WBOY
WBOYasal
2023-07-29 15:05:111467semak imbas

Cara menggunakan modul permintaan untuk membuat permintaan HTTP dalam Python 3.x

Ikhtisar:
Apabila membangun dan membina aplikasi web moden, anda sering perlu berinteraksi dengan sumber luaran dan HTTP ialah salah satu protokol yang paling biasa digunakan. Python menyediakan banyak perpustakaan untuk membuat permintaan HTTP, yang paling popular ialah modul permintaan. Artikel ini menerangkan cara membuat permintaan HTTP menggunakan modul permintaan dalam Python 3.x, dengan contoh kod.

  1. Pasang modul permintaan
    Sebelum anda bermula, anda perlu memasang modul permintaan terlebih dahulu. Ia boleh dipasang melalui pengurus pakej pip, buka terminal dan laksanakan arahan berikut:
pip install requests
  1. Menghantar permintaan GET

Menghantar permintaan GET menggunakan permintaan adalah sangat mudah. Hanya import modul permintaan, nyatakan URL sasaran menggunakan kaedah get() dan kemudian proses data respons menggunakan kaedah json() atau text().

import requests

url = "https://api.example.com/users"
response = requests.get(url)

# 获取 JSON 格式的响应数据
data = response.json()

# 输出响应数据
print(data)
  1. Hantar permintaan POST

Menghantar permintaan POST adalah serupa dengan menghantar permintaan GET, hanya gunakan kaedah post() dan nyatakan URL sasaran dan data untuk dihantar.

import requests

url = "https://api.example.com/users"
data = {
    "name": "John Doe",
    "age": 30,
    "email": "johndoe@example.com"
}

response = requests.post(url, data=data)

# 输出响应码
print(response.status_code)
  1. Hantar permintaan dengan pengepala permintaan

Kadangkala pelayan memerlukan maklumat tambahan untuk mengendalikan permintaan dengan betul, seperti pengesahan, ejen pengguna, dll. Kita boleh menambah pengepala permintaan menggunakan parameter pengepala.

import requests

url = "https://api.example.com/users"
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}

response = requests.get(url, headers=headers)

# 输出响应数据
print(response.json())
  1. Mengendalikan ralat dan pengecualian

Dalam aplikasi sebenar, pelbagai ralat dan pengecualian mungkin dihadapi. Kita boleh menggunakan cuba/kecuali blok untuk mengendalikan situasi ini.

import requests

url = "https://api.example.com/users"
response = None

try:
    response = requests.get(url)
    response.raise_for_status()  # 如果请求失败,抛出异常
except requests.exceptions.HTTPError as errh:
    print("HTTP Error:", errh)
except requests.exceptions.ConnectionError as errc:
    print("Error Connecting:", errc)
except requests.exceptions.Timeout as errt:
    print("Timeout Error:", errt)
except requests.exceptions.RequestException as err:
    print("Something went wrong:", err)

if response is not None:
    print(response.json())

Ringkasan:
Dalam artikel ini, kami mempelajari cara membuat permintaan HTTP menggunakan modul permintaan dalam Python 3.x. Kami mempelajari cara menghantar permintaan GET dan POST serta memproses data respons. Kami juga mempelajari cara menambah pengepala permintaan dan cara mengendalikan ralat dan pengecualian. Modul permintaan berkuasa dan mudah digunakan, menjadikannya pilihan yang bagus untuk membina aplikasi web moden.

Saya harap artikel ini membantu anda memahami cara menggunakan modul permintaan dalam Python 3.x untuk membuat permintaan HTTP!

Atas ialah kandungan terperinci Cara menggunakan modul permintaan untuk membuat permintaan HTTP dalam Python 3.x. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn