Python - Ứng dụng khách HTTP
Trong giao thức http, yêu cầu từ máy khách đến máy chủ và tìm nạp một số dữ liệu và siêu dữ liệu giả sử đó là một yêu cầu hợp lệ. Chúng tôi có thể phân tích phản hồi này từ máy chủ bằng cách sử dụng các chức năng khác nhau có sẵn trong mô-đun yêu cầu python. Tại đây, các chương trình python dưới đây chạy ở phía máy khách và hiển thị kết quả của phản hồi do máy chủ gửi.
Nhận phản hồi ban đầu
Trong chương trình dưới đây, phương thức get từ mô-đun yêu cầu tìm nạp dữ liệu từ máy chủ và nó được in ở định dạng văn bản thuần túy.
import requests
r = requests.get('https://httpbin.org/')
print(r.text)[:200]
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được kết quả sau:
<!DOCTYPE html >
<html lang="en">
<head>
<meta charset="UTF-8">
<title>httpbin.org</title>
<link
href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+
Nhận phản hồi đối tượng phiên
Đối tượng Session cho phép bạn duy trì các tham số nhất định trên các yêu cầu. Nó cũng tồn tại cookie trên tất cả các yêu cầu được thực hiện từ phiên bản Session. Nếu bạn đang thực hiện một số yêu cầu đến cùng một máy chủ, kết nối TCP bên dưới sẽ được sử dụng lại.
import requests
s = requests.Session()
s.get('http://httpbin.org/cookies/set/sessioncookie/31251425')
r = s.get('http://httpbin.org/cookies')
print(r.text)
Khi chúng tôi chạy chương trình trên, chúng tôi nhận được kết quả sau:
{"cookies":{"sessioncookie":"31251425"}}
Xử lý lỗi
Trong trường hợp một số lỗi phát sinh do sự cố trong quá trình xử lý yêu cầu của máy chủ, chương trình python có thể xử lý ngoại lệ một cách duyên dáng bằng cách sử dụng tham số thời gian chờ như được hiển thị bên dưới. Chương trình sẽ đợi giá trị xác định của lỗi hết thời gian chờ và sau đó nâng lỗi thời gian chờ.
requests.get('http://github.com', timeout=10.001)