Python - HTTP Client



In the http protocol, the request from the client reaches the server and fetches some data and metadata assuming it is a valid request. We can analyze this response from the server using various functions available in the python requests module. Here the below python programs run in the client side and display the result of the response sent by the server.

Get Initial Response

In the below program the get method from requests module fetches the data from a server and it is printed in plain text format.

import requests
r = requests.get('https://httpbin.org/')
print(r.text)[:200]

When we run the above program, we get the following output −

<!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+

Get Session Object Response

The Session object allows you to persist certain parameters across requests. It also persists cookies across all requests made from the Session instance. If you’re making several requests to the same host, the underlying TCP connection will be reused.

import requests
s = requests.Session()

s.get('http://httpbin.org/cookies/set/sessioncookie/31251425')
r = s.get('http://httpbin.org/cookies')

print(r.text)

When we run the above program, we get the following output −

{"cookies":{"sessioncookie":"31251425"}}

Handling Error

In case some error is raised because of issue in processing the request by the server, the python program can gracefully handle the exception raised using the timeout parameter as shown below. The program will wait for the defined value of the timeout error and then raise the time out error.

requests.get('http://github.com', timeout=10.001)
Advertisements