Thư viện yêu cầu là một trong những phần không thể thiếu của Python để thực hiện các yêu cầu HTTP tới một URL được chỉ định. Cho dù đó là API REST hay Quét web, các yêu cầu phải được học để tiếp tục với các công nghệ này. Khi một người đưa ra yêu cầu tới một URI, nó sẽ trả về một phản hồi. Yêu cầu Python cung cấp các chức năng sẵn có để quản lý cả yêu cầu và phản hồi
nội dung
- Tại sao nên học mô-đun yêu cầu Python?
- Yêu cầu cài đặt
- Yêu cầu
- Phương thức yêu cầu http
- đối tượng phản hồi
- Phương pháp phản hồi
- Xác thực bằng Yêu cầu Python
- Xác minh chứng chỉ SSL
- Đối tượng phiên
Tại sao nên học mô-đun yêu cầu Python?
- Yêu cầu là thư viện HTTP được cấp phép Apache2, cho phép gửi HTTP/1. 1 yêu cầu sử dụng Python
- Để chơi với web, phải có Yêu cầu Python. Cho dù đó là nhấn API, tải xuống toàn bộ trang facebook và nhiều nội dung thú vị khác, người dùng sẽ phải yêu cầu URL
- Các yêu cầu đóng vai trò chính là xử lý API REST và Quét web
- Kiểm tra Tập lệnh Python mẫu bằng cách sử dụng Yêu cầu và Quét web – Triển khai Quét web bằng Python với BeautifulSoup Bài báo gần đây về yêu cầu
Yêu cầu cài đặt
Yêu cầu cài đặt tùy thuộc vào loại hệ điều hành trên eis đang sử dụng, lệnh cơ bản ở mọi nơi sẽ là mở một thiết bị đầu cuối lệnh và chạy,
pip install requests
Phương pháp cơ bản để cài đặt yêu cầu trên bất kỳ hệ điều hành nào là lấy các tệp cơ sở và cài đặt yêu cầu theo cách thủ công và Yêu cầu được phát triển tích cực trên GitHub, nơi mã luôn có sẵn. Đối với mã - hãy truy cập tại đây.
Bạn có thể sao chép kho lưu trữ công cộng.
git clone git://github.com/psf/requests.git
Khi bạn có một bản sao của nguồn, bạn có thể nhúng nó vào gói Python của riêng bạn hoặc cài đặt nó vào các gói trang web của bạn một cách dễ dàng
cd requests pip install .
Để kiểm tra thêm – Cách cài đặt yêu cầu trong Python – Dành cho windows, linux, mac
Yêu cầu
Mô-đun yêu cầu Python có một số phương thức tích hợp để tạo các yêu cầu Http tới URI được chỉ định bằng cách sử dụng các yêu cầu GET, POST, PUT, PATCH hoặc HEAD. Yêu cầu http có nghĩa là truy xuất dữ liệu từ một URI được chỉ định hoặc đẩy dữ liệu đến máy chủ. Nó hoạt động như một giao thức yêu cầu phản hồi giữa máy khách và máy chủ. Hãy trình bày cách tạo một yêu cầu GET tới một điểm cuối.
Phương thức GET được sử dụng để truy xuất thông tin từ máy chủ đã cho bằng một URI đã cho. Phương thức GET gửi thông tin người dùng đã mã hóa được thêm vào yêu cầu trang. Trang và thông tin được mã hóa được phân tách bằng ký tự ‘?’.
Ví dụ.
//www.google.com/search?q=helloCách thực hiện yêu cầu GET thông qua Yêu cầu Python
Mô-đun yêu cầu của Python cung cấp phương thức dựng sẵn có tên là get[] để thực hiện yêu cầu GET tới một URI đã chỉ định
Cú pháp –
requests.get[url, params={key: value}, args]
Ví dụ -
Hãy thử yêu cầu API của github cho các mục đích ví dụ
git clone git://github.com/psf/requests.git4
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
git clone git://github.com/psf/requests.git0
git clone git://github.com/psf/requests.git1
git clone git://github.com/psf/requests.git2
git clone git://github.com/psf/requests.git3____14
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
git clone git://github.com/psf/requests.git7
git clone git://github.com/psf/requests.git8
git clone git://github.com/psf/requests.git9
cd requests pip install .0
git clone git://github.com/psf/requests.git6
cd requests pip install .2
git clone git://github.com/psf/requests.git9
cd requests pip install .4
lưu tập tin này theo yêu cầu. py và thông qua chạy thiết bị đầu cuối,
cd requests pip install .0
Đầu ra –
Để biết thêm, hãy truy cập phương thức GET – Yêu cầu Python
Phương thức yêu cầu http –
Phương thức MethodDescripGETGET được sử dụng để truy xuất thông tin từ máy chủ đã cho bằng cách sử dụng một URI đã cho. Phương thức yêu cầu POSTPOST yêu cầu máy chủ web chấp nhận dữ liệu có trong nội dung của thông báo yêu cầu, rất có thể để lưu trữ itPUTPhương thức PUT yêu cầu thực thể kèm theo được lưu trữ trong URI được cung cấp. Nếu URI đề cập đến một tài nguyên đã tồn tại, nó sẽ được sửa đổi và nếu URI không trỏ đến một tài nguyên hiện có, thì máy chủ có thể tạo tài nguyên với URI đó. DELETEPhương thức DELETE xóa tài nguyên đã chỉ địnhHEADPhương thức HEAD yêu cầu một phản hồi giống với yêu cầu GET, nhưng không có phần thân phản hồi. PATCHIt được sử dụng để sửa đổi khả năng. Yêu cầu PATCH chỉ cần chứa các thay đổi đối với tài nguyên, không phải toàn bộ tài nguyênđối tượng phản hồi
Khi một người gửi yêu cầu tới một URI, nó sẽ trả về phản hồi. Đối tượng Phản hồi này về mặt python được trả về theo yêu cầu. phương thức [], phương thức là - nhận, đăng, đặt, v.v. Phản hồi là một đối tượng mạnh mẽ với nhiều chức năng và thuộc tính hỗ trợ chuẩn hóa dữ liệu hoặc tạo các phần mã lý tưởng. Ví dụ, phản ứng. status_code trả về mã trạng thái từ chính các tiêu đề và người ta có thể kiểm tra xem yêu cầu có được xử lý thành công hay không.
Đối tượng phản hồi có thể được sử dụng để ám chỉ nhiều tính năng, phương thức và chức năng.
Ví dụ
cd requests pip install .5
git clone git://github.com/psf/requests.git4
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
cd requests pip install .9
//www.google.com/search?q=hello0
git clone git://github.com/psf/requests.git2
git clone git://github.com/psf/requests.git3______33
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
//www.google.com/search?q=hello6
git clone git://github.com/psf/requests.git9
//www.google.com/search?q=hello8
git clone git://github.com/psf/requests.git6
requests.get[url, params={key: value}, args]0
git clone git://github.com/psf/requests.git9
requests.get[url, params={key: value}, args]2
Lưu tệp này theo yêu cầu. py và chạy bằng lệnh bên dưới
//www.google.com/search?q=hello7
Mã trạng thái 200 cho biết rằng yêu cầu đã được thực hiện thành công
Phương pháp phản hồi
Phương thức Mô tảphản hồi. phản hồi tiêu đề. tiêu đề trả về một từ điển tiêu đề phản hồi. phản ứng. phản hồi mã hóa. mã hóa trả về mã hóa được sử dụng để giải mã phản hồi. Nội dung. phản ứng. phản hồi trôi qua. đã trôi qua trả về một đối tượng timedelta với thời gian đã trôi qua kể từ khi gửi yêu cầu đến khi nhận được phản hồi. phản ứng. đóng [] phản hồi. close[] đóng kết nối đến máy chủ. phản ứng. phản hồi nội dung. nội dung trả về nội dung của phản hồi, tính bằng byte. phản ứng. phản hồi cookie. cookie trả về một đối tượng CookieJar với các cookie được gửi lại từ máy chủ. phản ứng. phản hồi lịch sử. history trả về danh sách các đối tượng phản hồi chứa lịch sử yêu cầu [url]. phản ứng. is_ Permanent_redirectresponse. is_ Permanent_redirect trả về True nếu phản hồi là url được chuyển hướng vĩnh viễn, nếu không thì Sai. phản ứng. is_redirectresponse. is_redirect trả về True nếu phản hồi được chuyển hướng, nếu không thì Sai. phản ứng. phản hồi iter_content[]. iter_content[] lặp lại phản hồi. Nội dung. phản ứng. phản hồi json[]. json[] trả về một đối tượng JSON của kết quả [nếu kết quả được viết ở định dạng JSON, nếu không, nó sẽ phát sinh lỗi]. phản ứng. phản hồi url. url trả về URL của phản hồi. phản ứng. phản hồi văn bản. văn bản trả về nội dung của phản hồi, trong unicode. phản ứng. status_coderesponse. status_code trả về một số cho biết trạng thái [200 là OK, 404 là Không tìm thấy]. phản ứng. yêu cầu phản hồi. yêu cầu trả về đối tượng yêu cầu đã yêu cầu phản hồi này. phản ứng. phản ứng hợp lý. lý do trả về một văn bản tương ứng với mã trạng thái. phản ứng. phản hồi raise_for_status[]. raise_for_status[] trả về một đối tượng HTTPError nếu xảy ra lỗi trong quá trình. phản ứng. phản hồi tốt. ok trả về True nếu status_code nhỏ hơn 200, nếu không thì False. phản ứng. liên kết phản hồi. liên kết trả về các liên kết tiêu đềXác thực bằng Yêu cầu Python
Xác thực đề cập đến việc cấp cho người dùng quyền truy cập vào một tài nguyên cụ thể. Vì, mọi người không thể được phép truy cập dữ liệu từ mọi URL, nên người ta sẽ yêu cầu xác thực chủ yếu. Để đạt được xác thực này, thông thường, người ta cung cấp dữ liệu xác thực thông qua tiêu đề Ủy quyền hoặc tiêu đề tùy chỉnh do máy chủ xác định
Ví dụ -
cd requests pip install .5
git clone git://github.com/psf/requests.git4
git clone git://github.com/psf/requests.git5
requests.get[url, params={key: value}, args]6
requests.get[url, params={key: value}, args]7
git clone git://github.com/psf/requests.git4
requests.get[url, params={key: value}, args]9
git clone git://github.com/psf/requests.git6
cd requests pip install .9
//www.google.com/search?q=hello0
git clone git://github.com/psf/requests.git2
git clone git://github.com/psf/requests.git3____205
cd requests pip install .06
cd requests pip install .07
cd requests pip install .08
git clone git://github.com/psf/requests.git2
//www.google.com/search?q=hello70
//www.google.com/search?q=hello71
cd requests pip install .06
//www.google.com/search?q=hello73
//www.google.com/search?q=hello74
git clone git://github.com/psf/requests.git6
//www.google.com/search?q=hello6
git clone git://github.com/psf/requests.git9
//www.google.com/search?q=hello78
Thay thế “user” và “pass” bằng tên người dùng và mật khẩu của bạn. Nó sẽ xác thực yêu cầu và trả về phản hồi 200 nếu không nó sẽ trả về lỗi 403.
Để biết thêm thông tin truy cập – Xác thực bằng yêu cầu Python
Xác minh chứng chỉ SSL
Yêu cầu xác minh chứng chỉ SSL cho yêu cầu HTTPS, giống như trình duyệt web. Chứng chỉ SSL là các tệp dữ liệu nhỏ liên kết kỹ thuật số khóa mật mã với thông tin chi tiết của tổ chức. Thông thường, một trang web có chứng chỉ SSL được gọi là trang web an toàn. Theo mặc định, xác minh SSL được bật và Yêu cầu sẽ đưa ra lỗi SSLError nếu không thể xác minh chứng chỉ
Tắt xác minh chứng chỉ SSL
Hãy để chúng tôi thử truy cập một trang web có chứng chỉ SSL không hợp lệ, sử dụng các yêu cầu Python
cd requests pip install .5
git clone git://github.com/psf/requests.git4
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
cd requests pip install .9
//www.google.com/search?q=hello0
git clone git://github.com/psf/requests.git2
git clone git://github.com/psf/requests.git3____847
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
//www.google.com/search?q=hello6
git clone git://github.com/psf/requests.git9
//www.google.com/search?q=hello78
Đầu ra. -
Trang web này không có thiết lập SSL nên phát sinh lỗi này.
người ta cũng có thể chuyển liên kết đến chứng chỉ để xác thực chỉ thông qua yêu cầu python.
cd requests pip install .5
git clone git://github.com/psf/requests.git4
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
cd requests pip install .9
//www.google.com/search?q=hello0
git clone git://github.com/psf/requests.git2
git clone git://github.com/psf/requests.git3____861
git clone git://github.com/psf/requests.git62
git clone git://github.com/psf/requests.git2
git clone git://github.com/psf/requests.git64
git clone git://github.com/psf/requests.git5
git clone git://github.com/psf/requests.git6
//www.google.com/search?q=hello6
git clone git://github.com/psf/requests.git9
//www.google.com/search?q=hello78
Điều này sẽ hoạt động trong trường hợp đường dẫn được cung cấp là chính xác cho chứng chỉ SSL cho github. com.
Để biết thêm thông tin truy cập- Xác minh chứng chỉ SSL – Yêu cầu Python
Đối tượng phiên
Đối tượng phiên cho phép một người duy trì các tham số nhất định trong các yêu cầu. Nó cũng duy trì cookie trên tất cả các yêu cầu được thực hiện từ phiên bản Phiên và sẽ sử dụng tổng hợp kết nối của urllib3. Vì vậy, nếu một số yêu cầu được thực hiện cho cùng một máy chủ, thì kết nối TCP bên dưới sẽ được sử dụng lại, điều này có thể dẫn đến hiệu suất tăng đáng kể. Một đối tượng phiên tất cả các phương thức theo yêu cầu
Sử dụng đối tượng phiên
Hãy để chúng tôi minh họa việc sử dụng các đối tượng phiên bằng cách đặt cookie thành url và sau đó thực hiện lại yêu cầu để kiểm tra xem cookie đã được đặt chưa