JSoup选择器没有返回结果

时间:2016-04-30 20:42:01

标签: css-selectors jsoup

我过去曾使用过JSoup,并且已经能够将XPath转换为选择器,但是我无法在已更改的网站上获得这一个表的结果。

我试图从this Georgia soccer site检索Standings表。

在Chrome中,我将表格的选择器设为 simulateComputer():void { rummyGame.computerPlaySolo(); }

Firefox为表#tabs-1 > div > table:nth-child(12) > tbody > tr > td > table:nth-child(1) > tbody > tr:nth-child(1) > td > table > tbody

提供了类似的选择器

两者都不起作用。即使在Try JSoup link

第一个第n个子表本身.placeholder > table:nth-child(12) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(1)返回null。

知道这个页面有什么特别之处吗?

我将用户代理字符串设置为#tabs-1 > div > table:nth-child(12)

2 个答案:

答案 0 :(得分:0)

我认为您在Jsoup中发现了一个错误。但是,这是一个解压缩表的解决方法:

table#Table6 + table > tbody:has(tr.theadb)

DEMO

答案 1 :(得分:0)

我认为你需要的信息是tr标签,类名为tbody0& tbody1。你可以尝试一下。

public static void main (String []args) throws IOException {
 Document doc = Jsoup.connect("http://gs-fall15athenaandclassic.sportsaffinity.com/tour/public/info/schedule_results2.asp?sessionguid=&flightguid=CB37D3C7-5EF7-4CCE-8918-3AC3083495A3&tournamentguid=173EB212-BADB-425F-BE03-D05CA448AD8D").get();
 Elements ele = doc.select("tr.tbody0,tr.tbody1");

 for(Element e : ele){
     System.out.println(e.text()+",");        
 }
 }