Jsoup是用于解析HTML,就类似XML解析器用于解析XML。 Jsoup它解析HTML成为真实世界的HTML。 它与jquery选择器的语法非常相似,并且非常灵活容易使用以获得所需的结果。 在本教程中,我们将介绍很多Jsoup的例子。
能用Jsoup实现什么?
从URL,文件或字符串中刮取并解析HTML查找和提取数据,使用DOM遍历或CSS选择器操纵HTML元素,属性和文本根据安全的白名单清理用户提交的内容,以防止XSS攻击输出整洁的HTML安装-运行时依赖关系
您可以使用下面的maven依赖项将Jsoup jar包含到项目中。
应用实例
现在我们来看一些使用Jsoup API处理HTML文档的例子。
载入文件
从URL加载文档,使用Jsoup.connect()方法从URL加载HTML。
2.从文件加载文档
使用Jsoup.parse()方法从文件加载HTML。
3.从String加载文档
使用Jsoup.parse()方法从字符串加载HTML。
4.从HTML获取标题
如上图所示,调用document.title()方法获取HTML页面的标题。
5.获取HTML页面的Fav图标
假设favicon图像将是HTML文档的部分中的第一个图像,您可以使用下面的代码。
获取HTML页面中的所有链接
要获取网页中的所有链接,请使用以下代码。
7.获取HTML页面中的所有图像
要获取网页中显示的所有图像,请使用以下代码。
8.获取URL的元信息
元信息包括Google等搜索引擎用来确定网页内容的索引为目的。 它们以HTML页面的HEAD部分中的一些标签的形式存在。 要获取有关网页的元信息,请使用下面的代码。
9.在HTML页面中获取表单属性
在网页中获取表单输入元素非常简单。 使用唯一ID查找FORM元素; 然后找到该表单中存在的所有INPUTDocument
}
10.元素的属性/内容
只要您使用上述方法找到您想要的元素; 可以使用Jsoup API来更新这些元素的属性或innerHTML。 例如,想更新文档中存在的“rel = nofollow”的所有
11.消除不信任的HTML(以防止XSS)
假设在应用程序中,想显示用户提交的HTML片段。 例如 用户可以在评论框中放入HTML内容。 这可能会导致非常严重的问题,如果您允许直接显示此HTML。 用户可以在其中放入一些恶意脚本,并将用户重定向到另一个脏网站。
为了清理这个HTML,Jsoup提供Jsoup.clean()方法。 此方法期望HTML格式的字符串,并将返回清洁的HTML。 要执行此任务,Jsoup使用白名单过滤器。 jsoup白名单过滤器通过解析输入HTML(在安全的沙盒环境中)工作,然后遍历解析树,只允许将已知安全的标签和属性(和值)通过清理后输出。
它不使用正则表达式,这对于此任务是不合适的。
如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h60301.shtml