Rumah > pembangunan bahagian belakang > Tutorial Python > Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x

Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x

WBOY
Lepaskan: 2023-07-30 11:28:48
asal
1737 orang telah melayarinya

Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x

Dalam pengaturcaraan rangkaian, kita selalunya perlu mendapatkan data daripada pelayan jauh dengan menghantar permintaan HTTP. Dalam Python, kita boleh menggunakan fungsi urllib.request.urlopen() dalam modul urllib untuk menghantar permintaan HTTP dan mendapatkan respons yang dikembalikan oleh pelayan. Artikel ini akan menerangkan cara menggunakan fungsi ini untuk menghantar permintaan GET.

Pertama, kita perlu mengimport modul urllib.request:

import urllib.request
Salin selepas log masuk

Seterusnya, kita boleh menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET. Fungsi ini menerima parameter URL rentetan jenis dan mengembalikan objek tindak balas yang serupa dengan objek fail. Kita boleh menggunakan kaedah read() objek ini untuk membaca data yang dikembalikan oleh pelayan.

Berikut ialah contoh kod yang menunjukkan cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dan mendapatkan data yang dikembalikan oleh pelayan:

import urllib.request

def send_get_request(url):
    # 发送 GET 请求
    response = urllib.request.urlopen(url)
    
    # 读取服务器返回的数据
    data = response.read()
    
    # 将返回的数据转换为字符串并打印
    print(data.decode('utf-8'))
Salin selepas log masuk

Dalam kod di atas, fungsi send_get_request() menerima parameter URL jenis rentetan , dan kemudian gunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dan mencetak data yang dikembalikan ke konsol.

Kami boleh memanggil fungsi send_get_request() untuk menghantar permintaan GET seperti berikut:

url = 'http://www.example.com'
send_get_request(url)
Salin selepas log masuk

Kod di atas akan menghantar permintaan GET ke http://www.example.com dan kemudian mencetak data yang dikembalikan oleh pelayan.

Perlu diambil perhatian bahawa nilai pulangan fungsi urllib.request.urlopen() ialah objek respons yang serupa dengan objek fail Kita boleh mendapatkan maklumat lain yang dikembalikan oleh pelayan, seperti kod respons dan respons, dengan memanggil beberapa kaedah objek ini. Berikut ialah contoh kod untuk mendapatkan kod respons dan pengepala respons:

import urllib.request

def send_get_request(url):
    # 发送 GET 请求
    response = urllib.request.urlopen(url)
    
    # 打印响应码
    print('Response Code:', response.getcode())
    
    # 打印响应头
    print('Response Headers:', response.getheaders())
    
    # 读取服务器返回的数据
    data = response.read()
    
    # 将返回的数据转换为字符串并打印
    print(data.decode('utf-8'))
Salin selepas log masuk

Ringkasan

Artikel ini memperkenalkan cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dan mendapatkan data yang dikembalikan oleh pelayan. Dengan memanggil fungsi ini, kami boleh menghantar permintaan dengan mudah ke pelayan jauh dan mendapatkan respons. Pada masa yang sama, kita juga boleh mendapatkan maklumat lain seperti kod respons dan pengepala respons dengan memanggil kaedah objek respons. Saya harap artikel ini akan membantu semua orang apabila menggunakan Python untuk pengaturcaraan rangkaian.

Atas ialah kandungan terperinci Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan