Yêu cầu python đặt thông số

Yêu cầu là một mô-đun Python mà bạn có thể sử dụng để gửi tất cả các loại yêu cầu HTTP. Đây là một thư viện dễ sử dụng với nhiều tính năng khác nhau, từ việc truyền các tham số trong URL để gửi các tùy chọn tiêu đề và xác minh SSL. Trong hướng dẫn này, bạn sẽ được học cách sử dụng yêu cầu thư viện để gửi yêu cầu HTTP đơn giản bằng Python

You can use Requests with Python version 2. 6-2. 7 và 3. 3-3. 6. Trước khi tiếp tục, bạn nên biết rằng Yêu cầu là một mô-đun bên ngoài, do đó bạn phải cài đặt nó trước khi chạy thử các ví dụ trong hướng dẫn này. Bạn có thể cài đặt nó bằng cách chạy lệnh sau đây trong thiết bị đầu cuối

1
pip install requests

Một khi bạn đã cài đặt mô-đun, bạn có thể kiểm tra xem nó đã được cài đặt thành công hay chưa bằng cách nhập nó bằng lệnh này

1
import requests

Nếu cài đặt thành công, bạn sẽ không thấy bất kỳ thông báo lỗi nào

Create a GET request

It easy to send a HTTP request by Requests. Bạn bắt đầu bằng cách nhập mô-đun và sau đó thực hiện yêu cầu. Dưới đây là một ví dụ

1
____3____6
req = requests.get('https://tutsplus.com/')

Tất cả các thông tin về yêu cầu của chúng tôi hiện được lưu trữ trong một đối tượng Phản hồi được gọi là

pip install requests
68. Ví dụ. bạn có thể lấy mã hóa của trang web bằng thuộc tính
pip install requests
69. Bạn cũng có thể lấy mã trạng thái của yêu cầu bằng thuộc tính
pip install requests
70

1
____12____6
pip install requests
1

Bạn có thể truy cập các cookie mà máy chủ đã gửi lại bằng

pip install requests
71. Tương tự, bạn có thể nhận được các tiêu đề phản hồi bằng
pip install requests
72. Thuộc tính
pip install requests
72 trả về một từ điển chứa các tiêu đề phản hồi không phân biệt chữ hoa chữ thường. Điều này có nghĩa là
pip install requests
74,
pip install requests
75 và
pip install requests
76 tất cả sẽ trả về giá trị của tiêu đề phản hồi
pip install requests
77

Bạn có thể kiểm tra xem phản hồi có phải là chuyển hướng HTTP đúng ngữ pháp mà có thể đã được xử lý tự động bằng thuộc tính

pip install requests
78. Nó sẽ trả lại
pip install requests
79 hoặc
pip install requests
80 dựa trên phản hồi. Bạn cũng có thể lấy được khoảng thời gian trôi qua giữa gửi yêu cầu và nhận lại phản hồi bằng thuộc tính
pip install requests
81

URL mà bạn truyền cho hàm

pip install requests
82 có thể khác với URL sau cùng của phản hồi vì nhiều lý do, kể cả chuyển hướng. Để xem URL phản hồi sau cùng, bạn có thể sử dụng thuộc tính
pip install requests
83

1
import requests
2
pip install requests
5
pip install requests
6
pip install requests
7
pip install requests
8_______19
1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
import requests
0
import requests
1
import requests
2
import requests
3
import requests
4

Nhận tất cả các thông tin này về trang web mà bạn đang truy cập là điều rất tốt, nhưng có thể bạn muốn truy cập vào nội dung là sự thật. Nếu nội dung mà bạn đang truy cập là văn bản, bạn có thể sử dụng thuộc tính

pip install requests
84 để truy xuất nó. Nội dung sau đó được phân tích thành unicode. Bạn có thể truyền mã hóa để giải mã văn bản bằng thuộc tính
pip install requests
69

Trong trường hợp phản hồi không phải là văn bản, bạn có thể truy cập chúng dưới dạng nhị phân bằng

pip install requests
86. Mô-đun này sẽ tự động giải mã
pip install requests
87 và
pip install requests
88. Điều này có thể hữu ích khi bạn đang xử lý các tập tin media. Tương tự, bạn có thể truy cập nội dung đã được mã hóa dạng json của phản hồi, nếu có, hãy sử dụng
pip install requests
89

Bạn cũng có thể lấy lại bản gốc được phản hồi từ máy chủ bằng

pip install requests
90. Hãy nhớ rằng bạn phải truyền đến
pip install requests
91 trong yêu cầu để được phản hồi gốc

Một số tập tin mà bạn tải xuống từ Internet sử dụng các yêu cầu mô-đun có thể có kích thước rất lớn. Trong những trường hợp như vậy, không nên tải toàn bộ phản hồi hoặc tập tin vào bộ nhớ cùng một lúc. Bạn có thể tải xuống từng phần hoặc khối của một tệp bằng phương thức

pip install requests
92

Phương thức này lặp lại thông qua phản hồi dữ liệu bằng số byte

pip install requests
93 tại một thời điểm. Khi
pip install requests
91 được thiết lập trong yêu cầu, phương thức này sẽ tránh đọc toàn bộ tập tin vào bộ nhớ cùng một lúc cho các phản hồi lớn. Tham số
pip install requests
93 có thể là một số nguyên hoặc
pip install requests
96. Khi thiết lập một số nguyên giá trị,
pip install requests
93 xác định số byte cần đọc vào bộ nhớ

Khi

pip install requests
93 được thiết lập thành
pip install requests
96 và
1
00 được thiết lập thành
pip install requests
79, thì dữ liệu sẽ được đọc khi nó đến trong bất kỳ kích thước khối nào được nhận. Khi
pip install requests
93 được thiết lập thành
pip install requests
96 và
1
00 được thiết lập thành
pip install requests
80, tất cả dữ liệu sẽ được trả về dưới dạng một khối đơn

Vui lòng tải xuống hình ảnh khu rừng trên Pixabay bằng các yêu cầu mô-đun. Đây là hình ảnh thực tế

Yêu cầu python đặt thông số
Yêu cầu python đặt thông số
Yêu cầu python đặt thông số

Đây là mã mà bạn cần

1
import requests
2
import requests
8
pip install requests
6
1
0
pip install requests
7
1
2
pip install requests
9
1
4
1
1
1
6
1
3
1
8

1
06 là URL hình ảnh thực tế; . Tập tin hình ảnh đó có kích thước 185kb và bạn đã thiết lập
pip install requests
93 thành 50. 000 byte. Điều này có nghĩa là thông báo "Received a Chunk" sẽ xuất hiện bốn lần trong thiết bị đầu cuối. Kích thước của khối cuối cùng sẽ chỉ là 39350 byte bởi vì phần còn lại của tệp nhận được sau ba lần lặp đầu tiên là 39350 byte

Yêu cầu cũng cho phép bạn chuyển các tham số trong một URL. Điều này có thể hữu ích khi bạn đang tìm kiếm trang web để lấy một số kết quả như hình ảnh hoặc hướng dẫn cụ thể. Bạn có thể cung cấp các chuỗi truy vấn này như một từ điển bằng cách sử dụng từ khóa

1
08 trong yêu cầu GET. Dưới đây là một ví dụ

1
import requests
2
pip install requests
6
import requests
3
pip install requests
7
import requests
5
pip install requests
9
1
1
import requests
8
1
3
2
0

Create a POST request

Tạo một yêu cầu POST cũng tương tự như yêu cầu GET. Bạn chỉ cần sử dụng hàm

1
09 thay cho
pip install requests
82. Việc làm này có thể hữu ích khi bạn tự động gửi biểu mẫu. Ví dụ, đoạn mã sau sẽ tải toàn bộ trang Wikipedia về Công nghệ Nano và lưu nó trên máy tính của bạn

1
import requests
_______6
2
4
pip install requests
6
1
0
pip install requests
7
2
8
pip install requests
9
1
4
1
1
1
8

Như đã đề cập ở trên, bạn có thể truy cập các cookie và tiêu đề mà máy chủ gửi lại cho bạn bằng

1
11 và
pip install requests
72. Các yêu cầu cũng cho phép bạn gửi cookie và biến tiêu đề tùy chọn của riêng bạn cùng với một yêu cầu. Điều này có thể hữu ích khi bạn muốn, giả sử thiết lập một tác nhân người dùng tùy biến cho yêu cầu của bạn

To add HTTP headers to request, you only need to transfer them in a

1
13 into tham số
1
14. Tương tự, bạn cũng có thể gửi cookie của mình đến máy chủ bằng cách sử dụng
1
13 truyền vào tham số
1
16

1
import requests
2
pip install requests
6
req = requests.get('https://tutsplus.com/')
7
pip install requests
7
pip install requests
9
1
0
1
1
1
2
1
3
1
5
1
5

Cookie can also be transfer information in a Cookie Jar. Chúng tôi cung cấp một giao diện đầy đủ hơn để cho phép bạn sử dụng các cookie đó trên nhiều đường dẫn. Dưới đây là một ví dụ

1
import requests
2
pip install requests
6
pip install requests
20
pip install requests
7
pip install requests
22
pip install requests
9
pip install requests
24
1
1
pip install requests
26
1
3
1
5
pip install requests
29
1
6
pip install requests
01
1
8
import requests
0
pip install requests
04
import requests
1
import requests
3
pip install requests
07

Các Đối tượng Phiên

Đôi khi cần phải giữ nguyên các tham số định trước trên nhiều yêu cầu. Đối tượng Phiên xử lý điều chỉnh chính xác. Ví dụ, nó sẽ giữ cookie dữ liệu trên tất cả các yêu cầu được thực hiện trong cùng một phiên. Đối tượng Phiên sử dụng kết nối tổng hợp của urllib3. Điều này có nghĩa là kết nối TCP bên dưới sẽ được sử dụng lại cho tất cả các yêu cầu được thực hiện đến cùng một máy chủ. Điều này có thể tăng đáng kể hiệu suất. Bạn cũng có thể sử dụng các phương thức của đối tượng Yêu cầu với phiên đối tượng

Dưới đây là ví dụ về nhiều yêu cầu được gửi bằng cách sử dụng và không sử dụng phiên

1
import requests
2
pip install requests
6
pip install requests
12
pip install requests
7
pip install requests
14
pip install requests
9
pip install requests
16
1
1
1
3
pip install requests
19
1
5
pip install requests
21
1
6
pip install requests
23
1
8
import requests
0
pip install requests
26
import requests
1
pip install requests
28
import requests
3
pip install requests
30
pip install requests
31
pip install requests
32
pip install requests
33
pip install requests
34
pip install requests
35_____135_____135_____13___1

Như bạn đã thấy, phiên cookie có một giá trị khác nhau trong yêu cầu thứ nhất và thứ hai, nhưng nó có cùng giá trị khi chúng ta sử dụng đối tượng Session. Bạn sẽ nhận được một giá trị khác khi thử mã này, nhưng cũng tương tự, cookie cho các yêu cầu được thực hiện bằng cách sử dụng các đối tượng Phiên sẽ có cùng giá trị

Phiên cũng hữu ích khi bạn muốn gửi dữ liệu tương tự trên tất cả các yêu cầu. Ví dụ: nếu bạn quyết định gửi một cookie hoặc một tác nhân người dùng tiêu đề với tất cả các yêu cầu đến một tên miền tốt nhất, bạn có thể sử dụng các đối tượng Session. Dưới đây là một ví dụ

1
import requests
2
pip install requests
6
pip install requests
44
pip install requests
7
pip install requests
46
pip install requests
9
1
1
pip install requests
49
1
3
pip install requests
51
1
5
pip install requests
53
1
6
1
8
pip install requests
56
import requests
0
pip install requests
58
import requests
1
pip install requests
60
import requests
3
pip install requests
31
pip install requests
63
pip install requests
33
pip install requests
65___134
pip install requests
53

Như bạn có thể thấy, phiên cookie

1
17 được gửi cùng với cả ba yêu cầu. Tuy nhiên, cookie
1
18 chỉ được gửi trong yêu cầu thứ hai. Còn lại chưa cập nhật cookie
1
19 trong yêu cầu thứ ba. Điều này xác nhận thực tế rằng cookie hoặc tệp dữ liệu khác trên các yêu cầu riêng lẻ sẽ không được gửi cùng với các phiên yêu cầu khác

Tóm tắt phần

Các khái niệm được thảo luận trong hướng dẫn này sẽ giúp bạn tạo các yêu cầu đến máy chủ cơ bản bằng cách truyền tải tiêu đề, cookie hoặc chuỗi truy vấn cụ thể. Điều này sẽ rất hữu ích khi bạn đang cố gắng thu thập thông tin từ một số trang web. Bây giờ, bạn sẽ có thể tự động tải các bài nhạc và hình nền từ các trang web khác nhau sau khi bạn tìm thấy mẫu URL

Đừng ngại xem xét những gì chúng tôi đang bán và những tài liệu dành cho học tập trên Market, và đừng ngại đặt câu hỏi và cung cấp những phản hồi có giá trị của bạn

Nếu bạn có bất kỳ câu hỏi nào liên quan đến hướng dẫn này, xin vui lòng cho tôi biết trong phần bình luận nhé