User Guides

How to Use a Proxy With Selenium in Python

Anastasia Lukinova
Anastasia Lukinova
11 December 2023 • 3 min read

When it comes to web automation, the Selenium library is considered one of the most convenient. However, its operation can be limited by services that detect suspicious activity. Connecting new IPs makes it possible to maintain anonymity, control traffic, and run scripts from multiple IP addresses simultaneously.

Using a proxy server in Python is one of the most effective tools. It allows you to change your IP address, work within the technical restrictions of platforms (for example, those related to access to content or IP activity), and remain undetected. This article provides a step-by-step explanation of how to set up proxies in Selenium with Python from scratch, including both basic and authenticated configurations.

Setting Up a Proxy for Use in Selenium

To use intermediaries in projects, it is not enough just to correctly specify the IP address; you also need to consider the subtleties of passing parameters to the browser. The main principle is that the driver setup includes the proxy as part of the launch configuration.

When you are going to set a proxy in Selenium with Python allows you to scale scraping and testing without risking blocks on your main IP, which is critical for many practical scenarios such as price monitoring, competitor analysis, and website availability checks without interruptions.

Step 1: Installing Selenium

Before starting up, you need to make sure the library is installed in your environment.

Command for installation:

pip install selenium

You may also need a web driver for the appropriate browser (for example, ChromeDriver for Google Chrome), which must be downloaded separately.

Step 2: Importing the Required Libraries

To begin configuration, you need to import the necessary modules. The basic import for setting up a proxy server in Python looks like this:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

Step 3: Configuring Parameters

To connect a proxy server in Python to Selenium, you need to set the corresponding settings through the Options object.

The example below shows how to specify the new IP:

chrome_options = Options()
proxy_address = ""

chrome_options.add_argument(f'--proxy-server={proxy_address}')

Here, --proxy-server is the standard argument for launching the browser through a specific intermediary. Make sure to specify the correct protocol (http, https, or socks5) along with the port.

Step 4: Launching the Browser With a Proxy

After adding the new IP to the parameters, you need to initialize the browser driver by passing these parameters:

driver = webdriver.Chrome(options=chrome_options)

This launch allows you to check whether everything works correctly. For example, you can visit a site that shows your IP address to make sure the new IP is being displayed. This approach is essential if you need to use Selenium with proxy servers in Python to bypass restrictions or maintain anonymity.

Step 5: Setting Up Authentication (if needed)

When Selenium sets proxies with authentication it usually requires a login and password for access. Since Selenium’s standard interface does not directly support passing credentials through Options, you often need to use workaround methods.

Alternatively, you can use libraries like seleniumwire, which natively support authenticated proxies and allow you to define them as a dictionary with parameters like user, pass, host, and port.

Here’s an example of configuring authentication manually:

proxy_address = ""
proxy_username = ""
proxy_password = ""

chrome_options = Options()
chrome_options.add_argument(f'--proxy-server={proxy_address}')
chrome_options.add_argument(f'--proxy-auth={proxy_username}:{proxy_password}')

driver = wiredriver.Chrome(options=chrome_options)

Why Use Proxies With Selenium in Python

They help solve several important tasks in web automation:

  • Anonymity: hiding the user’s real IP address;
  • Bypassing blocks: avoiding restrictions imposed by websites during mass requests;
  • Large-scale data collection: ensuring uninterrupted scraping without the risk of being blacklisted;
  • Availability testing: simulating access from different regions.

Thus, a properly configured connection provides greater stability, safe data collection, and reduces the risk of being blocked by web resources.

Conclusion

Using proxies with Selenium in Python is an effective way to increase stability during automation. With support for authorization and flexible connection parameter configuration, Selenium makes it possible to build adaptable and scalable scripts for interacting with web resources.

Understanding how to set up intermediaries provides advantages in both application testing and data collection tasks, allowing browser sessions to be launched with the required configuration from any region. This approach makes proxies an indispensable tool in modern web scraping and QA automation.

PROXIES FROM $0.02/IP

Ready to put this into practice?

Pick a proxy type and location, and start using it within minutes.

See pricing

Instant delivery

24/7 support

Refund policy


Share:

About the author

Anastasia Lukinova

Anastasia Lukinova

Editor & Content Manager @ Proxy-Seller
Editor & Content Manager at Proxy-Seller. Writes step-by-step how-to guides on proxy setup and tool configuration — every workflow is verified end-to-end before publication.

Related articles

User Guides

How to Set Up a Zoom Proxy

Explore solutions to common Zoom issues like firewall blocks and country-specific restrictions. Learn the effective method to bypass firewall protection and set up a proxy for seamless video conferencing and calls in Zoom.
07 December 2023
User Guides

Setting Up a Proxy in The AdsPower Browser

What is the AdsPower antidetect-browser, and how to set up and use proxies in AdsPower to bypass restrictions and blocks when managing multiple accounts? Instructions for integrating a proxy list into the AdsPower browser.
01 June 2021
Reviews & Comparisons

Puppeteer vs Selenium: Core Differences

This article attempts to outline differences in a guide to Puppeteer vs Selenium so that you can choose intelligently based on your goals.
11 August 2025