HTML 返回用“-”替换文本值

问题描述

我目前正在使用此代码从论坛页面检索 HTML

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”后面的字符“-”