【问题标题】:Checking if connection has been established-jsoup检查连接是否已建立-jsoup
【发布时间】:2014-01-09 09:25:36
【问题描述】:

我正在尝试从网站中提取一些信息。这是它的代码。

Connection conn = Jsoup.connect(s_url); //s_url has been initialized to contain the url
conn.timeout(300000); //5 minutes
Document doc = conn.get();
//some code

连接似乎需要相当长的时间,大约 8-10 秒。我正在尝试显示类似

Connecting...

在建立连接时点会增加。有什么方法可以检查是否已与 jsoup 建立连接?如果没有,是否有可能在 Java 中以任何其他方式做到这一点?

【问题讨论】:

  • 可能是我的问题第一次无人回答。有人吗?
  • Jsoup.connect(path).execute() 返回一个响应。如果它不为空,则您已连接。查看 Jsoup API,您会发现有用的方法。
  • 5 分钟不会发生。您不能将连接超时时间增加到超过平台默认值大约一分钟的时间。你只能缩短它。 Javadoc 在这一点上是错误的。

标签: java jsoup


【解决方案1】:

我建议你使用线程。生成一个将连接到服务器的线程,并在主线程中等待它完成,同时打印点:

        Thread t = new Thread(

           new Runnable() {
            public void run() {
                System.out.println("Connecting");
                try{
                     loginForm = Jsoup.connect(s_url).execute();
                }catch (Exception e){

                }
            }
        }


        );
        t.start();
        while(t.isAlive()){
            Thread.sleep(1000); //1 second
            System.out.print(".");
        }

【讨论】:

    猜你喜欢
    • 2020-03-31
    • 1970-01-01
    • 1970-01-01
    • 2015-11-30
    • 1970-01-01
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    • 2011-03-22
    相关资源
    最近更新 更多