无法从div中获取文本...使用以下代码,不确定是什么问题
public void changeTab(TabChangeEvent event) {
TabView tabView = (TabView) event.getComponent();
logger.entry(tabView.getActiveIndex());
Tab tabProzesse = tabView.findTab("myForm:tabs:tab3");
if (Objects.nonNull(tabProzesse)) {
List<UIComponent> childs = tabProzesse.getChildren();
Optional<UIComponent> c = childs.stream().filter(child -> child.getClientId().equals("myForm:tabs:data")).findFirst();
if (c.isPresent() && c.get() instanceof DataTable) {
DataTable t = (DataTable) c.get();
Optional<UIColumn> optColName = t.getColumns().stream().filter(col -> col.getClientId().contains("colName")).findFirst();
optColName.ifPresent(colName -> {
logger.debugf("colName.clientId=%s", colName.getClientId()); // <-- output colName.clientId=myForm:tabs:data:colName
});
}
}
}
答案 0 :(得分:0)
可能是因为您的 Java浏览器 未登录到Facebook。如果您尚未登录,除了登录页面外,您将看不到任何内容。因此,您无法阅读div
的内容,您当前位于首页。
尝试打印您正在获取的所有内容,并检查它是否实际上是起始页。
您可以在此处找到深入的解释:Finding a word in a web page using java
如图所示,您可能找不到针对此问题的简易修复。
另请注意,在不使用自己的API 的情况下抓取Facebook会违反 服务条款。