Python Requests Module Usage
Python Requests module is a third-party library that allows us to send HTTP and HTTPS requests easily. It provides a simple and easy-to-use interface that can be used to communicate with web services and APIs.
Installation
To use the Requests module, you need to install it first. You can install it using pip, which is the Python package manager. Open a command prompt or terminal window and type the following command:
pip install requests
Sending a GET Request
The most common HTTP request method is GET, which is used to retrieve data from a server. Here's an example of how to send a GET request using the Requests module:
import requests
url = 'https://jsonplaceholder.typicode.com/posts'
response = requests.get(url)
print(response.status_code)
print(response.json())
In this example, we imported the Requests module and sent a GET request to the specified URL. We then printed the status code and the response content in JSON format.
Sending a POST Request
The POST method is used to submit data to a server. Here's an example of how to send a POST request using the Requests module:
import requests
url = 'https://jsonplaceholder.typicode.com/posts'
data = {'title': 'foo', 'body': 'bar', 'userId': 1}
response = requests.post(url, json=data)
print(response.status_code)
print(response.json())
In this example, we sent a POST request to the specified URL with the JSON data. We then printed the status code and the response content in JSON format.
Handling Errors
If the request fails, the Requests module will raise an exception. You can handle these exceptions using try-except blocks. Here's an example:
import requests
url = 'https://jsonplaceholder.typicode.com/posts/invalid_id'
try:
response = requests.get(url)
response.raise_for_status()
except requests.exceptions.HTTPError as err:
print(err)
In this example, we tried to send a GET request to an invalid URL. The requests.exceptions.HTTPError exception was raised, and we printed the error message.
Conclusion
The Python Requests module is a powerful tool for sending HTTP and HTTPS requests. It provides a simple and easy-to-use interface that can be used to communicate with web services and APIs. Whether you need to send GET or POST requests, handle errors, or work with JSON data, the Requests module has you covered.