Proxy Port logo
How-to Guides > How to set up a proxy for Python requests

How to set up a proxy for Python requests

In this article, we'll explore how to set up a proxy for Python requests and how to implement a rotating proxy to make requests through a pool of proxy servers. Using a proxy can be useful for many purposes, such as bypassing geographic restrictions, avoiding rate limits, or protecting your identity when scraping websites. We explored different ways of setting up a proxy using Python library requests and provided code examples that you can use as a starting point for your own projects. Whether you're building a web scraper or testing a website from different locations, understanding how to set up a proxy can help you achieve your goals more efficiently and reliably.

The easy way

Use Proxy Port wrapper for requests library from our SDK.



The long way

To set up a proxy for Python requests, you can use the proxies parameter of the requests library. Here is an example:

import requests

proxies = {
  'http': 'http://10.10.1.10:3128',
  'https': 'http://10.10.1.10:1080',
}

requests.get('http://example.org', proxies=proxies)

            
        
Alternatively you can configure it once for an entire Session:

import requests

proxies = {
  'http': 'http://10.10.1.10:3128',
  'https': 'http://10.10.1.10:1080',
}
session = requests.Session()
session.proxies.update(proxies)

session.get('http://example.org')

            
        
To use HTTP Basic Auth with your proxy, use the http://user:password@host/ syntax in any of the above configuration entries:

proxies = {
  'http': 'http://user:pass@10.10.1.10:3128',
  'https': 'http://user:pass@10.10.1.10:1080',
}

            
        
Note that proxy URLs must include the scheme.

To implement proxy rotation for the requests library, you will need to handle proxy failures and bans, and you will also need to implement a delay between requests.
See also:
Proxy for scraping
More