java – 用jsoup解析表
发布时间:2020-12-15 02:15:49 所属栏目:Java 来源:网络整理
导读:我正在尝试使用jsoup从linkedin配置文件中提取电子邮件地址和电话号码,每个信息都在一个表中.我编写了一个代码来提取它们但它不起作用,代码应该适用于任何linkedin配置文件.任何帮助或指导将不胜感激. public static void main(String[] args) { try { Strin
我正在尝试使用jsoup从linkedin配置文件中提取电子邮件地址和电话号码,每个信息都在一个表中.我编写了一个代码来提取它们但它不起作用,代码应该适用于任何linkedin配置文件.任何帮助或指导将不胜感激.
public static void main(String[] args) { try { String url = "https://fr.linkedin.com/"; // fetch the document over HTTP Document doc = Jsoup.connect(url).get(); // get the page title String title = doc.title(); System.out.println("Nom & Prénom: " + title); // first method Elements table = doc.select("div[class=more-info defer-load]").select("table"); Iterator < Element > iterator = table.select("ul li a").iterator(); while (iterator.hasNext()) { System.out.println(iterator.next().text()); } // second method for (Element tablee: doc.select("div[class=more-info defer-load]").select("table")) { for (Element row: tablee.select("tr")) { Elements tds = row.select("td"); if (tds.size() > 0) { System.out.println(tds.get(0).text() + ":" + tds.get(1).text()); } } } } } 这是我正在尝试提取的html代码的示例(取自linkedin配置文件) <table summary="Coordonnées en ligne"> <tr> <th>E-mail</th> <td> <div id="email"> <div id="email-view"> <ul> <li> <a href="mailto:adam1adam@gmail.com">adam1adam@gmail.com</a> </li> </ul> </div> </div> </td> </tr> <tr class="no-contact-info-data"> <th>Messagerie instantanée</th> <td> <div id="im" class="editable-item"> </div> </td> </tr> <tr class="address-book"> <th>Carnet d’adresses</th> <td> <span class="address-book"> <a title="Une nouvelle fenêtre s’ouvrira" class="address-book-edit" href="/editContact?editContact=&contactMemberID=368674763">Ajouter</a> des coordonnées. </span> </td> </tr> </table> <table summary="Coordonnées"> <tr> <th>Téléphone</th> <td> <div id="phone" class="editable-item"> <div id="phone-view"> <ul> <li>0021653191431 (Mobile)</li> </ul> </div> </div> </td> </tr> <tr class="no-contact-info-data"> <th>Adresse</th> <td> <div id="address" class="editable-item"> <div id="address-view"> <ul> </ul> </div> </div> </td> </tr> </table> 解决方法
要抓取电子邮件和电话号码,请使用css选择器来定位元素标识符.
String email = doc.select("div#email-view > ul > li > a").attr("href"); System.out.println(email); String phone = doc.select("div#phone-view > ul > li").text(); System.out.println(phone); 有关更多信息,请参见CSS Selectors. 产量 mailto:adam1adam@gmail.com 0021653191431?(Mobile) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读