首页

关于

使用java的html解析器jsoup和jQuery实现一个自动重复抓取任意网站页面指定元素的web应用

使用java的html解析器jsoup和jQuery实现一个自动重复抓取任意网站页面指定元素的web应用

在线演示  本地下载

如果你曾经开发过内容聚合类网站的话,使用程序动态整合来自不同页面或者网站内容的功能肯定对于你来说非常熟悉。通常使用java的话,我们都会使用到一些HTML的解析,例如,httpparser,最早gbin1.com的整合搜索就是使用httpparser来抓取Google和Baidu的搜索结果,并且整合呈现给搜索用户,这也就是GBin1域名的由来。

那么今天呢,我们介绍另外一个超棒的Java的HTML解析器 - jsoup,这个类库可以帮助大家实时的处理HTML。提供了非常方便的API来提取和处理数据,最重要的它使用类似jQuery的语法来处理DOMCSS等,如果你使用过jQuery的话,就知道它处理DOM的强大方便之处。

主要特性

jsoup实现了WHATWG HTML5 的标准,和现代浏览器解析DOM的方式一样。主要功能:

  • 可以从URL,文件或者字符串中抓取和解析HTML
  • 使用DOM的查询和CSS选择器来查找和解压数据
  • 可以处理HTML的属性,元素和文本
  • 帮助用户处理递交的内容,并且防止XSS攻击
  • 输出干净的HTML

基本上jsoup可以帮助你处理各种的HTML问题,并且帮助你验证非法的tag,创建一个干净的DOM树。

实现一个抓取功能

这里我们将实现一个简单的抓取功能,你只需要指定url,并且指定你需要抓取的特定元素,例如,ID或者class。后台我们将使用jsoup抓取,前台使用jQuery美化生成结果。

大家需要注意以下几点:

  1. <a>的相对路径问题:在你抓取的页面中的链接有可能使用相对路径,你需要处理成绝对路径,否则你在本地服务器上无法正常打开链接
  2. <img>…

标签: jsoup, java html parser, jquery, 抓取页面元素

阅读更多

标签

© Copywrite by gbin1.com, all rights reserved.