我一直试图找到一条线并在本网站上打印出来:http://www.easports.com/player-hub/360/Its+McDoom
现在它打印出网站上的所有内容,但我找不到我要找的那一行。我正在尝试打印出“H2h技能点数:1053”,但我在控制台中找不到类似的内容。
我只是想要打印那一行,而不是整个,但我甚至找不到它。
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
public class ElectronicArtsStatHub {
/**
* @param args
*/
public static void main (String[] args) throws Exception{
URL oracle = new URL("http://www.easports.com/player-hub/360/Its+McDoom");
URLConnection yc = oracle.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(
yc.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}
in.close();
}
}
答案 0 :(得分:0)
第一个问题是您尝试查找的信息实际上并不在您当前输出的数据中。
当您在浏览器中打开页面时,您会获得主页面元素,然后您的浏览器会运行一些Javascript代码,这些代码可能会使用AJAX获取统计信息并填写表格。
URLConnection会收到您的浏览器最初执行的相同数据,并且不会执行Javascript,因此如果您检查输出结果,那么您所寻找的数据实际上并不存在。
可能的解决方案包括为此数据寻找不同的来源或使用HTMLUnit
执行Java中的Javascript 可能会有一些有用的信息