Я не могу подключиться через прокси с помощью Selenium Chrome WebDriver на Python 3.7
1 - при использовании прокси (добавление -proxy-server =% s к chrome_options)
def selenium_connect():
PROXY = "66.97.38.58:80"
url = "http://whatsmyip.org"
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_argument('--proxy-server=%s' % PROXY)
driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get(url)
В этом случае я получаю пустой результат.
2 - я попробовал эту альтернативу: Как вы используете безголовый Chrome и прокси, используя селен в Python?
def selenium_connect():
PROXY = "66.97.38.58:80"
url = "http://whatsmyip.org"
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
desired_caps = chrome_options.to_capabilities()
prox = Proxy()
prox.proxy_type = ProxyType.MANUAL
prox.http_proxy = PROXY
prox.add_to_capabilities(desired_caps)
driver = webdriver.Chrome(chrome_options=chrome_options, desired_capabilities=desired_caps)
driver.get(url)
В этом случае соединение маршрутизируется через мой локальный ip, а не ip прокси. Я загрузил функцию в Docker здесь:
https://github.com/gerimo/challenge
Я использую стандартную среду Ubuntu Docker, selenium-3.141.0, хром-хромедрайвер 68.0