如何使用java中的JSoup通过表id解析html表数据

时间:2013-12-05 06:44:20

标签: java html-parsing jsoup html-parser

我需要将客户的表数据存储到数据库中。

有n个表没有提供任何表类(在网页中直接使用Table_id)。

示例:

[table width="100%" border="0" cellpadding="0" cellspacing="0"  id="AutoNumber5" style="border-collapse: collapse" bordercolor="#111111"]<br/>
[table width="100%" border="0" cellpadding="0" cellspacing="0"  id="AutoNumber4" style="border-collapse: collapse" bordercolor="#111111" ]

如果有一个Table Class,显然我可以很容易地解析它,但是没有类只是在表中给出了id。

我知道只有一个单词的语法,除了

for (Element table : doc.select("table") 

也许我找不到它。怎么找到它? 我试过了

for (Element table : doc.select("table.AutoNumber5")

但它不适合我。

如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

试试这个

doc.select("table#AutoNumber5");

它对我有用。

参考:  http://jsoup.org/apidocs/org/jsoup/select/Selector.html

答案 1 :(得分:2)

jsoup支持css选择器,如果你知道css,它很容易使用,如下所示:

  

文档doc = Jsoup.connect(“http://xxxxxxxx.com/”)。get();

     

元素el = doc.select(“#targeted-elemnet-id”);

你只需要在没有空格的#符号后替换你的元素id。