【发布时间】:2015-06-26 07:52:26
【问题描述】:
我已经尝试了所有方法来获取div标签的表格数据,但没有成功。当我查看源代码时,我能够看到表格的值。但是当我运行以提取值时,甚至无法识别该表。表格在这个 div 标签内。
<div xmlns:saxon="http://saxon.sf.net/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdt="http://www.w3.org/2005/xpath-datatypes" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:fo="http://www.w3.org/1999/XSL/Format">
我尝试过的方法。
Element table = doc.select("table").first();
Elements rows = table.select("tr");
for (int i = 1; i < rows.size(); i++) {
Element row = rows.get(i);
Elements tds = row.select("td");
System.out.println(tds.get(0).text() + ":" + tds.get(1).text());
}
我尝试过按类、标签等获取表格。这与 div 标签有什么关系吗?
【问题讨论】:
-
您确定它是文档中的第一个表格吗?当您使用命令行工具(例如 curl、wget)而不是浏览器下载页面时,表格是否存在?
-
这是第一张桌子。但是当我使用 wget 下载时,我无法查看。这是为什么。当我查看源代码时,我可以看到它。有没有办法拉取这张表的数据?
-
可能是表只用某个用户代理发送(尝试使用wget时发送和浏览器一样的用户代理),也可能是表只在某个用户代理发送cookie 被发送,或者当用户登录到站点时。在这种情况下,您需要发送所需的 cookie。
-
我正在尝试拉出此页面中的表格。此页面无需登录。 cmegroup.com/market-data/volume-open-interest/…
-
数据不在页面中。它由 Javascript 填充。我不知道你为什么说你可以在视图源中看到表格。也许您将“查看源代码”(显示浏览器下载的真实源代码)与“检查器”或 Firebug 视图混淆了,后者显示当前文档,包括 Javascript 所做的添加。数据不在页面中。您将无法使用 JSoup 获得它。
标签: java html web-scraping jsoup