1
我試圖爲FireFox上的每次運行設置一個新的隨機代理。 Itried很多,但只有這一個工作,但想不出如何使它隨機:Selenium Webdriver Firefox 52 Python每次運行選擇隨機代理
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.http", "Host")
profile.set_preference("network.proxy.http_port", port)
browser = webdriver.Firefox(profile)
我試過了這個例子但不工作的:
from selenium.webdriver.common.proxy import *
myProxy = "xx.xx.xx.xx:xxxx"
proxy = Proxy({
'proxyType': ProxyType.MANUAL,
'httpProxy': myProxy,
'ftpProxy': myProxy,
'sslProxy': myProxy,
'noProxy': '' # set this value as desired
})
driver = webdriver.Firefox(proxy=proxy)
driver.get("http://www.google.com")
這是最好的辦法,我因爲我可以使用:
myProxy = random.choice(open('data.txt').readlines())
我試圖讓從文本文件的代理這項工作,但不知道如何隨機:
with open('IPs.txt') as proxylist:
for line in proxylist:
proxyserv, proxyport = line.split(':')
proxy= proxyserv , proxyport
而且lastlly我想:
def random_line():
line_num = 0
selected_line = ''
with open('IPs.txt') as f:
while 1:
line = f.readline()
if not line: break
line_num += 1
if random.uniform(0, line_num) < 1:
selected_line = line
return selected_line.strip()
這一個獲得隨機線,但無法弄清楚如何將結果解析到 X = IP Y = PORT 然後:
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.http", "RANDOM IP")
profile.set_preference("network.proxy.http_port", Random PORT)
browser = webdriver.Firefox(profile)
端口需要是一個整數。 –