我尝试使用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,但问题是一样的。提前谢谢。