2017-04-03 31 views
0

我已经编写了一个打开Tor的代码。我也有一个自动更新torrc文件的退出节点列表。有时候,ip不能正常工作,但tor仍在加载尝试连接它。 如果IP不工作或者加载页面太长,有什么方法可以检查或获得回报吗? (P.S:对不起,我的英文,我是法国人)Java + Selenium - 如何检查tor是否工作

谢谢你的帮忙。

public void openTor1() 
{ 


} 

回答

0

您可以使用此代码来检查主机是否可达:

import java.net.InetAddress; 

private boolean isHostReachable(String host) 
{ 
    try 
    { 
     return InetAddress.getByName(host).isReachable(500); 
    } 
    catch (IOException e) 
    { 
     System.out.err("Error while checking if host is reachable: " + host + ", error is: " + e.getMessage()); 
     return false; 
    } 
} 

如果需要,你可以检查连接速度到该主机。你需要一些HttpClient/Connection对象。想法是发送Http请求,等待响应并测量已用时间。伪做到这一点:

 long startTime = System.currentTimeMillis(); 

    //Write this above before your httprequest 

      HttpResponse httpResponse = httpClient.execute(httpGet); 
      HttpEntity httpEntity = httpResponse.getEntity(); 
      is = httpEntity.getContent();  

    //After you get response 

    long elapsedTime = System.currentTimeMillis() - startTime; 
    System.out.println("Total elapsed http request/response time in milliseconds: " + elapsedTime); 

用于HTTP通讯基础教程:Using java.net.URLConnection to fire and handle HTTP requests

+0

你好,谢谢你,它工作得很好。是否还有一个我可以添加的参数检查与主机的连接是否不太慢?因为有时候,主机(出口节点)正在工作,但它太慢也加载任何网页。 – vinscarter

+0

我已将此问题添加到我的答案中。希望有所帮助! –