1

私はそのような画像の範囲のURLを取得しようとしています:

for(Element img : document.select(".left-column .strillo-content .lazy img[src]")) {
    InputStream input = new java.net.URL(imageMainUrl).openStream();
    Bitmap bitmap = BitmapFactory.decodeStream(input);
    images.add(bitmap);
}

しかし、アプリを実行しようとするたびに、次の警告が表示されます。

java.net.MalformedURLException: Unknown protocol: data
at java.net.URL.<init>(URL.java:184)
at java.net.URL.<init>(URL.java:127)

だから私はURLを印刷しようとしましたが、これを取得しました:

data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7

選択した要素が正しいことを100%確信しており、Webサイトの他のセクションでも同じプロセスを実行して機能するため、その理由を理解できます..

UPDATE 1:「base64」画像をデコードするためにこの方法を試しました:

byte[] decodedString = Base64.decode(imageMainUrl, Base64.DEFAULT);
Bitmap bitmap = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);

しかし、結果は同じです..

4

1 に答える 1