这是一个稍微老的问题。 但它实际上是可以动态地改变代理通,我将使用硒JS用Firefox一个“哈克的方式” 但你可以按照通在您需要的语言。
第1步:访问 “about:config中”
driver.get("about:config");
步骤2:运行脚本改变代理
var setupScript=`var prefs = Components.classes["@mozilla.org/preferences-service;1"]
.getService(Components.interfaces.nsIPrefBranch);
prefs.setIntPref("network.proxy.type", 1);
prefs.setCharPref("network.proxy.http", "${proxyUsed.host}");
prefs.setIntPref("network.proxy.http_port", "${proxyUsed.port}");
prefs.setCharPref("network.proxy.ssl", "${proxyUsed.host}");
prefs.setIntPref("network.proxy.ssl_port", "${proxyUsed.port}");
prefs.setCharPref("network.proxy.ftp", "${proxyUsed.host}");
prefs.setIntPref("network.proxy.ftp_port", "${proxyUsed.port}");
`;
//running script below
driver.executeScript(setupScript);
//sleep for 1 sec
driver.sleep(1000);
凡使用$ {ABCD}是你放置你的变量,在上面的例子中,我使用ES6处理串联,如图所示,你可以根据你的需要使用其他连接方法。R语言(的SetupScript是串包含脚本进行拼命地跑括在``)
第3步::访问你的网站
driver.get("https://whatismyip.com");
说明:上面的代码利用Firefox的API来改变使用JavaScript代码的偏好。
创建链接到您的代理的本地代理。必要时请您当地的代理商更改“退出”。 – user37203
看起来过于复杂。我希望有一个更简单的方法来做到这一点。 – tobloef
它实际上听起来像10行代码,有一个python库的任何东西在那里.. – user37203