我们在解析HTML 或者爬取网页信息时,一般使用htmlparser,可惜这个有好多硬伤,或者使用htmlcleaner来解析,爬取网页,除了这些其实我们还有其他好的选择,过滤html标签时我们常常需要写大量的正则表达式,这对于一个基本程序员来说是个头痛的问题。下面来看看Jsoup的基本使用:
public static void htmlTrimToTxt(){
String html = "<p> asdasdasda</p><p>\n\r\tdd</p>你好,我是来自<a href='http://www.iteye.com/' target='_blank'>社区</a>的灌水大王。";
String unsafe = "\r\n<h1>哈哈</h1><b>sdds< /b><code>34433434</code><img src='http://i.jpg'></img><p><a href='http://example.com/' onclick='stealCookies()'>Link</a></p>";
Whitelist whiteList=new Whitelist();
String safe = Jsoup.clean(unsafe, Whitelist.basicWithImages()); //定义白名单,留下一些标签
System.out.println(safe);
System.out.println(Jsoup.parse(html).text()); //全部过滤
1. }
分享到:
相关推荐
**Jsoup:HTML解析神器** ...总结来说,Jsoup是Java开发者处理HTML时的强大工具,无论是在数据抓取、网页验证还是内容过滤等方面,都能提供极大的便利。学习和掌握Jsoup的使用,将极大地提升你的Web开发效率。
**Android使用Jsoup技术解析HTML** Jsoup是一个Java库,专为处理真实世界的HTML而设计。在Android开发中,我们经常需要从网页抓取数据,比如解析新闻标题、获取图片链接或者提取用户评论等。Jsoup提供了一种简单、...
在解析HTML时,使用Jsoup的内置安全策略来过滤恶意内容。 总结来说,Jsoup是一个强大的工具,它使得在Java和Android应用中解析和操作HTML变得简单易行。通过学习和熟练掌握Jsoup,你可以高效地实现网页内容的获取与...
JSoup还支持递归解析、过滤、修改HTML元素等高级功能。例如,我们可以查找所有包含特定文本的段落,或者修改某些元素的属性: ```java Elements paragraphs = doc.select("p:containsOwn(经验)"); for (Element p :...
- **内容过滤**:在论坛或博客系统中,使用jsoup过滤用户提交的HTML内容,防止XSS攻击。 综上所述,jsoup是一个强大的HTML解析库,它简化了Java开发者处理HTML文档的工作,提供了丰富的API和CSS选择器支持。无论是...
1. **解析HTML文档**:使用`Jsoup.connect()`或`Jsoup.parse()`方法加载HTML文档。 2. **选择器API**:使用CSS选择器选取元素,例如`doc.select("a[href]")`选取所有链接。 3. **提取数据**:通过`.text()`、`.attr...
以上就是关于使用JSoup解析HTML的一些基础知识,包括如何连接网页、获取HTML、使用CSS选择器、遍历元素、修改属性以及提取链接等内容。在实际开发中,JSoup的灵活性和强大功能使其成为处理HTML文档的得力工具。
然而,使用时仍需注意输入验证和过滤,以确保数据安全。此外,Jsoup对内存和CPU使用进行了优化,使其适合处理大型HTML文档。 总之,Jsoup API是处理和解析HTML的强大工具,其易用性和灵活性使其在Web爬虫、网页数据...
同时,它还支持对不安全的HTML内容进行安全过滤,防止XSS攻击。 4. **连接和请求**:通过Jsoup的`Connection`接口,开发者可以直接从URL获取HTML内容,甚至可以设置HTTP头、发送POST数据等,实现简单的网络请求功能...
5. **安全过滤**:在解析过程中,jsoup可以对HTML内容进行安全过滤,避免XSS(跨站脚本攻击)的发生。它可以自动转义HTML特殊字符,防止恶意代码注入。 6. **连接与下载**:jsoup还提供了连接功能,可以直接从URL...
- **内容过滤**:在用户生成内容的场景下,Jsoup可以帮助过滤掉恶意的HTML标签和属性,保障安全。 总的来说,jsoup1.10.3及其API文档是Web开发人员的得力工具,无论是在爬虫项目还是网页数据处理中,都能发挥巨大...
总的来说,jsoup是一款强大且易于使用的Java HTML解析库,它简化了HTML处理的复杂性,为开发者提供了高效、安全的工具来处理网页数据。无论你是新手还是经验丰富的开发者,jsoup都能成为你开发项目中的得力助手。
在实际开发中,我们通常会将这个jar文件加入到项目依赖中,以便能够使用Jsoup提供的功能。 描述中的"import org.jsoup.Jsoup"是引入Jsoup库的入口,通过这行代码,开发者可以访问到Jsoup的主要功能。Jsoup提供了...
- **内容过滤**:在处理用户输入时,可以使用JSoup进行XSS(跨站脚本攻击)防护,清理不安全的HTML内容。 **总结** JSoup是一个强大的HTML处理库,提供了丰富的API来解析、操作和提取HTML数据。通过jsoup-proxy....
解决方法是使用Jsoup提供的方法,如`Jsoup.parse(String html, String baseUri)`来解析HTML字符串,并通过`Document`对象提供的方法来遍历文档和抽取数据。 #### 从URL加载Document Jsoup支持从URL直接加载一个...
- **内容过滤**:在内容管理系统中,可以使用JSoup来过滤或修改用户提交的HTML内容,确保安全性。 ### 其他相关组件 - **JsoupXpath-0.3.2.jar**:这可能是用于在JSoup基础上提供XPath支持的扩展库,XPath是一种在...
**CSS选择器** 使用Jsoup,你可以通过CSS选择器选取HTML元素。例如,`doc.select("h1")` 将选取所有`<h1>`标签,`doc.select(".class-name")` 则选取所有class为"class-name"的元素。这使得定位和操作网页内容变得...
- **内容过滤**:在用户生成内容的平台,jsoup可以用来清洗和验证输入的HTML,确保内容安全。 ### 5. 使用示例 以下是一个简单的示例,展示如何使用jsoup连接到一个网站,解析HTML并提取标题: ```java import ...
// 使用Jsoup的clean方法过滤XSS String safeHtml = Jsoup.clean(untrustedHtml, whitelist); System.out.println(safeHtml); } } ``` 在这个例子中,`untrustedHtml`包含了一个潜在的XSS攻击脚本。`Whitelist...
- **内容过滤**:过滤HTML中的广告或其他不需要的元素,提升用户体验。 - **网站迁移**:将旧版网站的数据迁移到新版网站,或者转换HTML格式。 总的来说,JSoup是一个强大的HTML处理工具,无论你是要从网页中提取...