用java抓取web html源文件

时间:2014-05-12 08:48:01

标签: java html url web webpage

我尝试使用java打开一个URL并获取html源并进行一些分析。我希望它像浏览器一样工作,您可以使用它加载页面并右键单击以查看html源代码。我有以下代码,这是我认为非常标准的方式。

public class getWeb {

    /**
     * @param args
     */
    private static final String url = "http://www.appannie.com/apps/ios/top/united-states/games/action/?device=iphone&date=2014-05-08";
    private static final String url_alt = "http://www.mkyong.com";

    public static void main(String[] args) {
        try{
            URL appannie = new URL(url_alt);
            URLConnection page = appannie.openConnection();
            BufferedReader in = new BufferedReader(new InputStreamReader(
                     page.getInputStream(), "UTF-8"));
            String inputLine;
            StringBuilder a = new StringBuilder();
            while ((inputLine = in.readLine()) != null)
                a.append(inputLine);
            in.close();

            System.out.println(a.toString());
        } catch (IOException e){
            e.printStackTrace();
        }

    }
}

问题是url不起作用,只返回状态代码503,这意味着它不可用。但我绝对可以在浏览器中打开该页面并查看html代码,如果我使用url_alt,我也可以获取html。

我对网络服务器不太熟悉,我不知道为什么我不能只获取各种网址的html源代码,比如使用浏览器。我也试过了一些其他的apis,比如jsoup和apache的httpclient,但问题是一样的。提前谢谢。

0 个答案:

没有答案