Один из способов сделать это - использовать http_request_randomizer (объяснение в комментариях к коду). Как вы, возможно, знаете, бесплатные прокси-серверы publi c крайне ненадежны, небезопасны и могут быть заблокированы. Поэтому я бы не рекомендовал использовать этот метод для серьезного проекта или на производстве.
from http_request_randomizer.requests.proxy.requestProxy import RequestProxy
from selenium import webdriver
req_proxy = RequestProxy() #you may get different number of proxy when you run this at each time
proxies = req_proxy.get_proxy_list() #this will create proxy list
PROXY = proxies[5].get_address() #select the 6th proxy from the list, of course you can randomly loop through proxies
print(proxies[5].country)
webdriver.DesiredCapabilities.CHROME['proxy'] = {
"httpProxy": PROXY,
"ftpProxy": PROXY,
"sslProxy": PROXY,
"proxyType": "MANUAL",
}
driver = webdriver.Chrome()
driver.get('https://www.expressvpn.com/what-is-my-ip')
Лучший способ сделать это - использовать платный прокси-сервис. В настоящее время я использую https://luminati.io/ в производственной среде, и их обслуживание очень надежно, плюс он автоматически и часто меняет ваш IP ( почти каждый запрос ).
См .:
Luminati
как настроить прокси с аутентификацией в селеновом хроматографе python?