使用JSoup测量下载页面/图像/ ...所需的时间

时间:2013-03-07 08:17:32

标签: java time jsoup pageload measure

我正在用java创建一个基本的“网络监控工具”,我正在使用库jsoup。一切都很好,但问题是,当我实际(下)加载东西时,我无法弄清楚。以此为例;

Long start = System.nanoTime();
Document doc = Jsoup.connect("http://hln.be").get();
Long end = System.nanoTime();
long elapsedTime = end - start;
double seconds = (double) elapsedTime / 1000000000.0;

这是一种准确的方式来了解完全(下载)页面所需的时间吗? get()方法的定义是; 以GET身份执行请求,并解析结果。

所以我想这就是我正在寻找的,或者有更好的方法吗?

同样的问题,但仅限图像;怎么知道我已经下载了所有图片而没有真正将它们保存在我的电脑上? 我现在正在做这样的事情;我有一个所有图像网址的列表,然后在for循环中我去了

url = new URL(element.absUrl("src"));
in = url.openStream();
reader = new BufferedReader(new InputStreamReader(is));

打开流后用BufferedReader读取它,是否意味着我'下载'了它们?如果是这样,我可以只测量超过这3行所需的时间,以了解下载图像需要多长时间?

我希望我能说清楚。

1 个答案:

答案 0 :(得分:0)

您可以使用execute()方法,该方法只提取页面而不解析响应。

E.g。

Document doc = Jsoup.connect("http://hln.be").execute();