当Jsoup无法找到元素时,我得到一个异常并且程序终止。我想有办法忽略它,当找不到元素时,程序会继续运行。
我尝试了以下方式:
Element contactHtml = null;
String person = "";
Document doc = Jsoup.parse(html);
try {
contactHtml = doc.select("p.initial-contact").get(0);
person = contactHtml.text();
} finally {}
但当元素不存在时,程序仍会终止。有没有办法创建代码,只是忽略不存在的元素?
答案 0 :(得分:3)
试试这个:
Element contactHtml = null;
String person = "";
Document doc = Jsoup.parse(html);
Elements elements = doc.select("p.initial-contact");
if(!elements.isEmpty()) {
contactHtml = elements.get(0);
person = contactHtml.text();
}
答案 1 :(得分:1)
当您尝试访问不存在的listindex时,例如在您的示例中没有索引0处的元素,您将获得IndexOutOfBoundException。使用try / catch构造可以避免Exception,但我不会使用“let-it-crash”概念。相反,我会检查是否有一个带有名称的标签。