首页 > 解决方案 > 解析网站以返回玩家列表的 Java 代码不会返回任何内容

问题描述

我正在用 java 编写一个程序,它将查看网站的 html 数据,找到某个文本值,然后将其返回给我。我对使用 HTML 非常陌生。这是我到目前为止的代码,依赖于 Jsoup。

public static void getPlayerData() throws IOException
    {
        Document page = Jsoup.connect("theURL").get();
        String title = page.title();
        Elements players = page.getElementsByClass("playerName playerNameNoHealth");
        for (Element span : players)
             {
                System.out.println(span.text());
             }
    }

我要寻找的课程在网站的结构中

<body class="">
<div id-"mcmap" class="dynmap">
<div class ="map leaflet-container leaflet-fade-anim">
<div class ="leaflet-map-pane">
<div class ="leaflet-objects-pane">
<div class ="leaflet-marker-pane">
    <div class="Marker playerMarker leaflet-marker-icon leaflet-clickable"style="transform: translate3d(281px, 75px, 0px); z-index: 75;">
        <img class="playerIcon" src="tiles/faces/32x32/(The player's name)"">
        <span class="playerName playerNameNoHealth">(Player's name)</span>

我不确定它是否没有打印玩家的名字,因为它被埋在更多的类中,或者我是否弄乱了 Jsoup 抓取的语法。

任何帮助表示赞赏!

标签: javahtmljsoup

解决方案


尝试改用这一行:

Elements players = page.select(".playerName");

推荐阅读