【问题标题】:Trouble parsing table with jsoup使用 jsoup 解析表时遇到问题
【发布时间】:2012-02-14 02:09:57
【问题描述】:

我已经坚持了几天了。我正在尝试创建一个用于论坛战斗锁定的应用程序(它是一个 MMA 论坛)。

我遇到麻烦的区域是在诸如 http://fightlockdown.com/forum/forumdisplay.php?f=1 之类的页面上,我想将表格中的每个部分显示为一行,但无法仅抓取部分,即 UFC、终极斗士等。 ..

我能得到的最接近的方法是抓取所有锚标签,但如果我没有正确从返回的元素中删除它们,页面上显然还有其他标签可能会影响我的结果。

我无法弄清楚如何让表格缩小我的结果,因为据我所知 doc.select("table.tborder") 不会产生任何结果, doc.select( “td.alt1Active”)。

任何帮助将不胜感激。提前致谢。

【问题讨论】:

    标签: java android jsoup


    【解决方案1】:

    您对要查找的内容不是很具体,因此我将在那里抛出一些代码,看看是否是您要查找的内容。

    特别是在此页面上,您尝试提取的 div 具有与之关联的两个类之一。此代码选择这些 div 并对其进行迭代,然后打印出 div 中的锚标记。

        Document doc = Jsoup.connect("http://fightlockdown.com/forum/forumdisplay.php?f=1").get();
        for (Element div : doc.select("div.forumold_lock, div.old_lockwindowbg")) {
            System.out.println(div.select("a"));
        }
    

    如果您需要更多帮助,请告诉我。

    【讨论】:

    • 我认为您可能无意中正确回答了我的问题。当我从 doc.select("div.forumold_lock, div.old_lockwindowbg") 打印 .text 时,它会打印出我的目标。抱歉,我的问题不太清楚,我试图这样做,但很少按计划进行哈哈非常感谢!
    • 你是如何确定 div 类的?我无法在 HTML 中的任何地方找到它们,我也没有向其他几个人询问过它。我正在尝试下一部分(单击此页面中的链接后),如果我知道您是如何确定这些的,它将为我节省很多时间,并希望能教我一些有关 HTML/CSS 的知识
    • 当我查看 html 源代码时,这些类在 div 中。不知道为什么你看不到它们。
    • 你在使用一些 html 查看器吗?我只是从我的浏览器 (Chrome) 中查看,但也尝试过 FireFox 和 IE
    • 我只是在做 System.out.println(doc);在初始解析之后。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-21
    • 2018-04-25
    • 1970-01-01
    • 1970-01-01
    • 2013-09-17
    相关资源
    最近更新 更多