i have html table & want extract link text based on condition
<table border="0" cellpadding="3" cellspacing="0" width="100%"> <tbody> <tr class="dir"><td colspan="2"> <a href="http://xyz/">yogendra sharma</a></td></tr> <tr> <td class="f"><a href="abc">abc</a> </td> <td> <tt class="con"> <a class="s" href="mno"><span class="l">7</span> mno <b>hello</b>;</a> <br> </tt> </td></tr> <tr class="dir"><td colspan="2"> <a href="http://xyz/">yogendra</a></td></tr> <tr> <td class="f"><a href="abc">abc</a> </td> <td> <tt class="con"> <a class="s" href="mno"><span class="l">7</span> mno <b>hello</b>;</a> <br> </tt> </td></tr> </table> i want print first link text i.e yogendra sharma & yogendra html file.
this file huge.
i use java jsoup cant figger out. please me .
you can try below code. need commons-io-1.3.2.jar , jsoup.jar. save html sample.html in root folder of project.
import java.io.file; import java.io.fileinputstream; import java.io.ioexception; import java.io.inputstream; import java.util.iterator; import org.apache.commons.io.ioutils; import org.jsoup.jsoup; import org.jsoup.nodes.document; import org.jsoup.nodes.element; import org.jsoup.select.elements; public class extractfromhtml { public static void main(string[] args) throws ioexception { file input = new file("sample.html"); inputstream in = new fileinputstream(input); string htmlout = ioutils.tostring(in); document document = jsoup.parse(htmlout); elements elementsa = document.select("a"); iterator<element> elementiterator = elementsa.iterator(); while (elementiterator.hasnext()) { element aelement = elementiterator.next(); if (aelement.outerhtml().contains("http://xyz/")) { system.out.println(aelement.text()); } } } } output :
yogendra sharma yogendra
Comments
Post a Comment