2013-02-10 88 views
1

我有一個java程序來下載一個網頁,解析圖像的網頁並顯示它們在網站上的順序。我需要的是該程序還顯示每個圖像的文件大小。用jsoup和jquery顯示圖像文件大小

我目前代碼:

public static void main(String[] args) throws IOException { 

    String url = "http://127.0.0.1"; //Url of webpage 
    print("Fetching %s...", url);  //output fetching 

    Document doc = Jsoup.connect(url).get(); //getting the document 

    Elements media = doc.select("[src]"); //parsing the page for images 

    print("\nMedia: (%d)", media.size()); 
    for (Element src : media) { 
     print(" * %s: <%s>", src.tagName(), src.attr("abs:src")); 

    } 

} 

,大氣壓,這似乎是這樣的:

<img href="cat.jpg" /> 
<img href="dog.jpg" /> 
<img href="horse.jpg" /> 

有沒有辦法有輸出到這個樣子?

<img href="cat.jpg" /> ---> 54kb 
<img href="dog.jpg" /> ---> 74kb 
<img href="horse.jpg" /> ---> 102kb 

由於目前使用jsoup 詩IM但是我不使用第三方庫的頭腦,如果這是需要什麼

回答

2

您可以使用此URL類:

for(Element element : media) 
{ 
    final String src = element.absUrl("src"); 

    if(src.toLowerCase().endsWith(".jpg")) // only needed if you want to check only jpegs 
    { 
     final URL url = new URL(src); 
     final long size = url.openConnection().getContentLength(); 

     System.out.println(element + " ---> " + size + " byte"); 
    } 
} 

但這決只顯示尺寸字節

爲了更好的可讀性,你可以...

+0

三江源所以很多 – messyeater 2013-02-10 19:32:19

+0

你需要關閉url連接嗎?我猜不是。 – 2015-07-24 03:55:12