Python Selenium ChromeDriver代理无法工作

4

我一直在尝试在CentOS服务器上使用Python Selenium代理。

我的Windows 10上的代码也可以正常工作。

两个操作系统上,Python、Selenium和ChromeDriver的版本都相同。

以下是我的代码。

import os
from selenium import webdriver
from pyvirtualdisplay import Display

from selenium.webdriver.chrome.options import Options

display = Display(visible=0, size=(800, 600))
display.start()

chrome_options = Options()
chrome_options.add_argument('--proxy-server=%s' % "http://198.55.109.17:3128")

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--no-sandbox')
driver = webdriver.Chrome('/usr/local/bin/chromedriver', chrome_options=chrome_options)
driver.get("https://api.ipify.org?format=json")
print driver.page_source.encode('utf-8')
driver.quit()
display.stop()

代理没有改变,它只是显示了我的服务器IP而不是我正在使用的代理IP。


1
你尝试过使用命令行启动吗?如果没有,请尝试这样做。 --proxy-server=: - farhan
--proxy-server=: - farhan
让我们在聊天中继续这个讨论 - Umair Ayub
尝试过 google-chrome --proxy-server="http://example.com:8080" 但是出现了错误 [2996:2996:0514/124224.776561:ERROR:browser_main_loop.cc(279)] Gtk: cannot open display: - Umair Ayub
1
你尝试过使用'--proxy-server=%s' % "198.55.109.17:3128"吗? - hayj
显示剩余10条评论
1个回答

0

在Selenium Chromedriver中正确使用代理的方法是:

random_proxy = 'some random proxy'
[...]
chrome_options = Options()
chrome_options.add_argument(f"--proxy-server={random_proxy}")
[...]
browser = webdriver.Chrome(service=webdriver_service, options=chrome_options)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接