Phương thức yêu cầu python

❮ Mô-đun Yêu cầu

Ví dụ

Gửi yêu cầu tới một trang web và trả lại mã trạng thái

yêu cầu nhập khẩu

x = yêu cầu. nhận ['https. //w3schools. com']
print[x. status_code]

Chạy ví dụ »

Định nghĩa và cách sử dụng

Phương thức

pip install requests
2 gửi yêu cầu GET đến url đã chỉ định

cú pháp

yêu cầu. get[url, params={key. giá trị}, đối số]

args có nghĩa là không hoặc nhiều đối số được đặt tên trong bảng tham số bên dưới. Ví dụ

yêu cầu. nhận [url, thời gian chờ = 2. 50]

Giá trị tham số

ParameterDescriptionurlDùng thửBắt buộc. Url của requestparamsDùng thửTùy chọn. Một từ điển, danh sách các bộ dữ liệu hoặc byte để gửi dưới dạng chuỗi truy vấn.
Mặc định
pip install requests
3allow_redirectsDùng thửTùy chọn. Boolean để bật/tắt chuyển hướng.
Mặc định
pip install requests
4 [cho phép chuyển hướng]authDùng thửTùy chọn. Một bộ để kích hoạt xác thực HTTP nhất định.
Mặc định
pip install requests
3chứng chỉDùng thửTùy chọn. Một Chuỗi hoặc Tuple chỉ định tệp hoặc khóa chứng chỉ.
Mặc định
pip install requests
3cookieDùng thửTùy chọn. Từ điển cookie để gửi đến url đã chỉ định.
Tiêu đề
pip install requests
3 mặc định Dùng thửTùy chọn. Một từ điển các tiêu đề HTTP để gửi đến url đã chỉ định.
Proxy
pip install requests
3 mặc địnhDùng thửTùy chọn. Một từ điển của giao thức cho url proxy.
Mặc định
pip install requests
3luồngDùng thửTùy chọn. Một dấu hiệu Boolean nếu phản hồi nên được tải xuống ngay lập tức [Sai] hoặc phát trực tuyến [Đúng].
Mặc định
from requests import get  # to make GET request

def download[url, file_name]:
    # open in binary mode
    with open[file_name, "wb"] as file:
        # get request
        response = get[url]
        # write to file
        file.write[response.content]
0thời gian chờDùng thửTùy chọn. Một số hoặc một bộ, cho biết cần đợi bao nhiêu giây để máy khách tạo kết nối và/hoặc gửi phản hồi.
Mặc định
pip install requests
3 có nghĩa là yêu cầu sẽ tiếp tục cho đến khi kết nối bị đóngxác minhDùng thử
Dùng thửTùy chọn. Chỉ báo Boolean hoặc Chuỗi để xác minh chứng chỉ TLS của máy chủ hay không.
Mặc định
pip install requests
4

Giá trị trả về

Phương thức get[] trả về một yêu cầu. đối tượng phản hồi

❮ Mô-đun Yêu cầu


Bạn có thể tải xuống tệp [Tệp ảnh, Tệp văn bản, …] từ 1 đường dẫn trên trang web sử dụng thư viện urllib của Python 3

Nội dung chính Hiển thị

  • 1. Nhập mô-đun
  • 2. Nhận liên kết hoặc url
  • 3. Lưu nội dung với tên
  • Nhận tên tệp từ một URL

Đoạn mã nguồn Python 3 như sau

import urllib
import os

output_dir = '/tmp'
image_url = '//vinasupport.com/assets/img/vinasupport_logo.png'

# Make output directory if not exist
if not os.path.exists[output_dir]:
    os.makedirs[output_dir]

# save path
image_save_path = output_dir + '/' + os.path.basename[image_url]

# Download file from url
urllib.request.urlretrieve[image, image_save_path]
print[image_save_path]

Trong ví dụ trên, mình thực hiện tải xuống tệp ảnh có đường dẫn là. https. //vinasupport. com/assets/img/vinasupport_logo. png

And save it down the path on server /tmp/vinasupport_logo. png

Một cách khác là sử dụng yêu cầu thư viện

Lần đầu tiên cài đặt các yêu cầu thông qua trình quản lý mô-đun / gói của Python 3

pip install requests

Sử dụng các yêu cầu để tải xuống tệp

from requests import get  # to make GET request

def download[url, file_name]:
    # open in binary mode
    with open[file_name, "wb"] as file:
        # get request
        response = get[url]
        # write to file
        file.write[response.content]

Nguồn. vinasupport. com

Python cung cấp các mô-đun khác nhau như urllib, yêu cầu, v.v. để tải xuống các tệp từ web. Tôi sẽ sử dụng thư viện yêu cầu của python để tải xuống các tệp từ URL một cách hiệu quả

Hãy bắt đầu xem quy trình từng bước để tải xuống tệp bằng URL bằng thư viện yêu cầu−

1. Nhập mô-đun

import requests

2. Nhận liên kết hoặc url

url = '//www.facebook.com/favicon.ico'
r = requests.get[url, allow_redirects=True]

3. Lưu nội dung với tên

open['facebook.ico', 'wb'].write[r.content]

lưu tệp dưới dạng facebook. ico

Ví dụ

import requests


url = '//www.facebook.com/favicon.ico'
r = requests.get[url, allow_redirects=True]

open['facebook.ico', 'wb'].write[r.content]

Kết quả

Chúng tôi có thể thấy tệp được tải xuống [biểu tượng] trong thư mục làm việc hiện tại của chúng tôi

Nhưng chúng tôi có thể cần tải xuống các loại tệp khác nhau như hình ảnh, văn bản, video, v.v. từ web. Vì vậy, trước tiên hãy lấy loại dữ liệu mà url đang liên kết đến−

>>> r = requests.get[url, allow_redirects=True]
>>> print[r.headers.get['content-type']]
image/png

Tuy nhiên, có một cách thông minh hơn, đó là chỉ cần tìm nạp các tiêu đề của url trước khi thực sự tải xuống. Điều này cho phép chúng tôi bỏ qua việc tải xuống các tệp không được tải xuống

________số 8

Để hạn chế tải xuống theo kích thước tệp, chúng tôi có thể lấy tệp tin từ tiêu đề độ dài nội dung và sau đó thực hiện theo yêu cầu của chúng tôi

contentLength = header.get['content-length', None]
if contentLength and contentLength > 2e8: # 200 mb approx
return False

Nhận tên tệp từ một URL

Để lấy tên tệp, chúng ta có thể phân tích cú pháp url. Dưới đây là một quy trình mẫu tìm nạp chuỗi cuối cùng sau dấu gạch chéo ngược [/]

pip install requests
0

Ở trên sẽ cung cấp tên tệp của url. Tuy nhiên, có nhiều trường hợp thông tin tên tệp không có trong url chẳng hạn – http. // url. com/tải xuống. Trong trường hợp như vậy, chúng ta cần lấy tiêu đề Bố trí nội dung, chứa thông tin tên tệp

pip install requests
1

Đoạn mã phân tích cú pháp url ở trên kết hợp với chương trình trên sẽ cung cấp cho bạn tên tệp từ tiêu đề Bố trí nội dung hầu hết thời gian

Chủ Đề