我目前正在尝试访问许多非常相似的网站,这些网站只包含文本,并且都以相同的方式格式化。
我调用此方法的前 5-30 次,它有效,但之后它返回 null。没有错误。是否有任何理由无法获取字符串?
在插入了一些文本之后,我发现它似乎line = in.readLine()
是随机的,null
它跳过了字符串抓取的主体。我用BufferedReader
的不多,所以很可能是问题所在。如果您有任何提示或解决此问题的方法,将不胜感激。
public static String pullString(int id) throws IOException {
String price;
logError("Checkpoint 1");
URL url = new URL("example.com");
URLConnection con = url.openConnection();
logError("Checkpoint 2");
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
logError("Checkpoint 3");
String line;
while ((line = in.readLine()) != null) {
// ^ for some reason this becomes null, but on identical pages it works fine.
//Removed unneeded info
return ---;
} catch (NumberFormatException e) {
logError("NumberFormatException");
return null;
}
}
}
logError("left out the back");
return null;
}