任何人都知道我如何通过Java代码将NewNym信号发送到TOR?
说我有这个:
String adress = "http://some-adress";
WebClient webClient = new WebClient(BrowserVersion.FIREFOX_52);
ProxyConfig proxyConfig = new ProxyConfig("127.0.0.1", 9150, true);
webClient.getOptions().setProxyConfig(proxyConfig);
webClient.getOptions().setJavaScriptEnabled(false);
webClient.getOptions().setUseInsecureSSL(true);
HtmlPage page = (HtmlPage)webClient.getPage(adress);
从技术上讲,我可以这样做以重新启动应用程序并获得新的身份:
Runtime.getRuntime().exec("C:/Users/user/Desktop/Tor Browser/Browser/firefox.exe");
Runtime.getRuntime().exec("TASKKILL /F /IM firefox.exe");
但是必须有一种发送newnym信号的方法,因为以这种方式获得新的身份是凌乱的。
任何人可以帮我吗?
htmlunit使用apache httpclient连接到服务器。
根据这个答案,您可以直接致电:
public static void torNewIP() throws Exception { Socket socket = new Socket(); socket.connect(new InetSocketAddress(TOR_IP, TOR_CONTROL_PORT)); socket.getOutputStream().write(new String("SIGNAL NEWNYMrn").getBytes()); socket.close(); }
启用'tor_control_port'
之后