簡體   English   中英

InputStream,BufferedImage缺少圖像

[英]InputStream, BufferedImage missing images

我正在嘗試從URL解析圖像。 一切正常。 但是我也想獲取圖像的高度和寬度。 因此,我正在嘗試使用BufferedImage

但是,如果我嘗試與圖像建立任何類型的連接,它將開始跳過圖像。 我不知道為什么會這樣,可能是因為循環強制跳過大圖像。

代碼->

public Vector getimages(Document doc) {
    Vector images = new Vector(50, 50);
    Elements png = doc.select("img");

    try {

        BufferedImage readImage_img = null;
        for(Element pngs : png) {
           if(!images.contains(new String(pngs.attr("abs:src")))) {
             //InputStream is = new URL(pngs.attr("abs:src")).openStream();

             //readImage_img = ImageIO.read(is);
             //int img_h = readImage_img.getHeight();
             //int img_w = readImage_img.getWidth();
             //if(img_h>50 && img_w>50)
             //{
             images.addElement(new String(pngs.attr("abs:src")));
             //}
           } 
        }

    } catch (Exception ex) {
    }
    return images;
}

但是,如果取消注釋輸入流或緩沖區,它將跳過主要是大圖像。

HTTP 403錯誤表示禁止。 這可能意味着URL錯誤,雙重編碼或正確,但其他錯誤。 您可能需要設置User-Agent HTTP標頭,以假裝您的程序是Web瀏覽器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM