将Newnym与Java一起发送到Tor



任何人都知道我如何通过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'

之后

最新更新