问题描述
String html = null;
URLConnection connection = null;
try {
connection = new URL(forumsURL).openConnection();
connection.addRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/89.0.4389.82 Safari/537.36");
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
html = scanner.next();
scanner.close();
} catch (Exception ex) {
ex.printstacktrace();
System.out.println("Issues communicating with forums");
return;
}
这段代码多年来一直在为我工作。但是,现在当它检索 HTML 时,一些字符串文本值被替换为“-”。
我正在解析的 HTML 在网页上查看时如下所示:
<div style class="onlineInfo">
<span class="PlayersOnline">20</span>
"/"
<span class="MaxPlayers">50</span>
</div>
但我的代码返回的 HTML 如下所示:
<div style="display:none" class="onlineInfo">
<span class="PlayersOnline">-</span>/<span class="MaxPlayers">50</span>
</div>
请注意,“PlayerOnline”值已被替换,不再显示玩家数量,而是仅返回“-”。
我不确定会导致此中断的更改。任何建议将不胜感激。
解决方法
也许是因为“PlayersOnline”后面的字符“-”