una texto scraping pagina library extraer con java web-scraping jsoup linkedin

java - texto - htmlunit version



analizar una tabla con jsoup (1)

Para raspar el correo electrónico y el número de teléfono, use los selectores de CSS para apuntar a los identificadores de los elementos.

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);

Ver selectores CSS para más información.

Salida

mailto:[email protected] 0021653191431 (Mobile)

Estoy tratando de extraer la dirección de correo electrónico y el número de teléfono de un perfil de linkedin usando jsoup, cada una de estas informaciones está en una tabla. He escrito un código para extraerlos pero no funciona, el código debería funcionar en cualquier perfil de linkedin. Cualquier ayuda u orientación sería muy apreciada.

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()); } } } } }

aquí hay un ejemplo del código html que estoy tratando de extraer (tomado de un perfil de 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:[email protected]">[email protected]</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&nbsp;(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>