python requests post proxy

Python Requests Post Proxy

As a programmer, I have had to deal with the issue of bypassing certain restrictions put in place by network administrators. One of the ways to do this is by using a proxy server. In Python, the Requests library is one of the most widely used libraries for making HTTP requests. In this article, I will discuss how to use the Requests library to make post requests via a proxy server.

Using the Request Library

The Requests library can be installed using pip, like so:

pip install requests

Once installed, you can import it into your Python script like so:

import requests

Sending a Post Request with a Proxy

To send a post request with a proxy, you first need to create a session object. This session object will be used to make the request. You can create a session object like so:

session = requests.Session()

Next, you need to set the proxy for the session object. You can do this by passing in a dictionary with the proxy information to the session object’s proxies attribute like so:

proxies = {
    'http': '',
    'https': ''
session.proxies = proxies

In this example, we are setting up an HTTP proxy at IP address and port 3128. We are also setting up an HTTPS proxy at the same IP address and port. You can modify this code to suit your own proxy settings.

Finally, we can send the post request using the session object’s post method, passing in the URL and any necessary data:

url = ''
data = {
    'username': 'myusername',
    'password': 'mypassword'
response =, data=data)

The response variable will contain the response from the server, which we can then manipulate as needed.


In conclusion, sending a post request with a proxy using the Requests library is fairly straightforward. By creating a session object and setting the proxy information, we can bypass network restrictions and access the resources we need. Hopefully, this article has helped you understand how to use the Requests library to send post requests via a proxy.