在 JSoup 中按类获取元素

Get element by class in JSoup

提问人:develoops 提问时间:2/18/2012 最后编辑:dumbPotato21develoops 更新时间:1/19/2021 访问量:47523

问:

我尝试获取名为 : 的 div 类中包含的所有信息,但我却获得了另一个 div 类的信息为什么我弄错了?bg_block_info<div class="bg_block_info pad_20">

Document doc = Jsoup.connect("http://www.maib.md").get(); 
Elements myin = doc.getElementsByClass("bg_block_info");
Java JSOUP

评论


答:

12赞 Wayne 2/18/2012 #1

该元素有两个类(注意 和 之间的空格):bg_block_infopad_20

<div class="bg_block_info pad_20">

因此,它确实具有类,并且您的代码按预期工作。bg_block_info

0赞 Alex Nevsky 2/18/2012 #2

在您的情况下,您可能会改用 .Element content = doc.getElementById("pollsstart");Elements myin = doc.getElementsByClass("bg_block_info");

28赞 Hauke Ingmar Schmidt 2/18/2012 #3

您可以组合和链接选择器来优化您的查询,例如:

Document doc = Jsoup.connect("http://www.maib.md/").get();
Elements els = doc.getElementsByClass("bg_block_info").not(".pad_10").not(".pad_20");
3赞 Vladimir Stazhilov 8/6/2016 #4
Elements downloadLinks = dContent.select("a[href]");
Elements pdfLinks = downloadLinks.select("a[data-format$=pdf]");

完整参考 jsoup 选择器语法

0赞 ögeday öztoprak 1/19/2021 #5

只需在 和 之间使用逗号即可。应该是这样的。bg_block_info""pad_20"

Elements myin = doc.getElementsByClass("div.bg_block_info.pad_20");