美文网首页
如何解析一个HTML

如何解析一个HTML

作者: 花生无翼 | 来源:发表于2020-10-21 11:19 被阅读0次

看到标题,你会猜到这篇文章要讲的内容吗?你可能猜到了,就是爬虫相关的内容。爬虫最重要的流程就是抽取页面数据,通俗的讲法就是解析数据如何解析一个HTML页面,我认为最简单的方式之一就是使用jsoup。

1.什么是jsoup

WechatIMG307.png
jsoup 是一款基于Java类库开发的HTML解析器,它提供了一套非常方便的API用户HTML页面数据的抽取。可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据。
看看jsoup的官网https://jsoup.org/,对jsoup描述的很清楚。
  • scrape and parse HTML from a URL, file, or string
  • find and extract data, using DOM traversal or CSS selectors
  • manipulate the HTML elements, attributes, and text
  • clean user-submitted content against a safe white-list, to prevent XSS attacks
  • output tidy HTML

2.jsoup简单示例

PM提的一个简单的需求,要求爬取百度热点新闻,找到热点新闻页,做了简单分析后开始编码。具体代码如下:
代码示例:

String html = HttpUtils.doGet(requestUrl, "GB2312");
Document doc = Jsoup.parse(html);
Element content = doc.getElementById("pane-news");
Elements elements = content.getElementsByTag("a");   
int count =1;   
for (Element ele : elements){        
    System.out.println(ele);       
    String title = ele.html();       
    System.out.println(title);       
    String href =          ele.getElementsByTag("a").first().attr("href"); 
    ele.getElementsByTag("a").first().attr("href");        
    href = href.replaceAll("n", "");       
    System.out.println(href);   
}    

3.总结

使用jsoup解析HTML非常方便,同时jsoup扩展性设计的也非常好,可以结合自己的需求开发出强大的选择器。如果你正好使用Java语言,又需要对HTML进行处理,可以来试试jsoup。

相关文章

网友评论

      本文标题:如何解析一个HTML

      本文链接:https://www.haomeiwen.com/subject/rqvsmktx.html