有图片的地址,如:http://i2.pixiv.net/img-original/img/201...
还有登陆后获取的cooikes:Connection cookies(Map<String, String> cookies);
登陆和获取cooikes以及解析页面是使用的jsoup。
但是需要登陆后才能获取,使用以下代码:
private void downloadImg(String imgURL) throws MalformedURLException, IOException {
URL url = new URL(imgURL);
URLConnection uc = url.openConnection();
InputStream is = uc.getInputStream();
File file = new File("D:\\pixiv");
FileOutputStream out = new FileOutputStream(file);
int i = 0;
while ((i = is.read()) != -1) {
out.write(i);
}
is.close();
}
只能下载不需要登陆的页面的图片。
要如何使用jsoup带cooikes来从网站下载图片
この問題は解決されました。Firebug を使用して、ブラウザで画像を閲覧するときに送信されるリクエスト パケットをキャプチャし、URLConnection コンストラクトを使用して、その形式に従って Cookie を含むリクエスト パケットを送信します。 1M を超える画像のダウンロード速度が遅すぎます。
リーリーHTML の解析に何を使用しても、ログインを決定するのは http リクエスト内の Cookie だけです。そのため、最初にログイン リクエストを作成し、http リソースから Cookie を取得してから、その Cookie を次の http リクエスト。ブラウザは Cookie を保持する操作を完了し、ログインが必要なリソース データをダウンロードできるようになります。
img src を抽出した後、URLConnection を使用して写真をダウンロードする場合、Web サイトに session_id のようなものがあるかどうかを確認してください。つまり、ユーザーのログイン ID を調べて、img src に何らかの ID を入力します。 >
apache httpClient
を使用してログインをシミュレートします