如何使用Java下载受保护的网页

Yur*_*nko 1 java security automation webpage download

我们有一个任务,设计一个可以下载任何网页源的类.但是,当我尝试测试我的代码并获取页面时http://anidb.net/perl-bin/animedb.pl?show=main- 没有任何工作.

像这样的标准代码失败:

import java.net.*;
import java.io.*;

public class URLReader {
    public static void main(String[] args) throws Exception {
        URL link = new URL("http://www.anidb.net/");
        BufferedReader in = new BufferedReader(
        new InputStreamReader(link.openStream()));

        String inputLine;
        while ((inputLine = in.readLine()) != null)
            System.out.println(inputLine);
        in.close();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我得到的结果:

Šwq>²"¦§5´_ï__ÇUº=ôÙö?kŠ}~“bd`?l“Ïçz¢Çêõ>_"?j׉R“y}K¸\Ìc_DLÙªÏ_
    –óMm_¼_0”•ö°ËC_aí½sî¤ìÁS ‚>dC0ìs_–y¹ñ±ÏÝÜAø%È_äÖá__æ©A@,4x„ж_ëɃ?
Run Code Online (Sandbox Code Playgroud)

我已经尝试了一切:cookie,头文件,但似乎没有任何工作.如果你有一些暗示,我会很感激.

Fri*_*erg 5

编写http客户端时,必须考虑gzip编码以及分块传输.最好使用库来下载网页.

尝试这样的事情:http: //code.google.com/p/google-http-java-client/