序言:在不知道jsoup框架前,由于项目需求。需要定时抓取其它站点上的内容。便想到用HttpClient方式获取指定站点的内容。这样的方法比較笨,就是经过url请求指定站点。依据指定站点返回文本解析。说白了HttpClient充当一下浏览器的角色。返回的文本需要本身处理,通常都是用string.indexOf或者string.subString方法处理。javascript
当有一天发现jsoup这个框架时一时感慨。以前的方法太笨了。。。html
jsoup 是一款Java 的HTML解析器。可直接解析某个URL地址、HTML文本内容。它提供了一套很省力的API,可经过DOM,CSS以及相似于jQuery的操做方法来取出和操做数据。java
jsoup主要功能jquery
1. 从一个URL,文件或字符串中解析HTML。
2. 使用DOM或CSS选择器来查找、取出数据。
3. 可操做HTML元素、属性、文本;
jsoup是基于MIT协议公布的。可放心使用于商业项目。浏览器
jsoup使用方法框架
File input = new File("D:\test.html"); Document doc =Jsoup.parse(input,"UTF-8","网址"); Elements links = doc.select("a[href]"); // 具备href 属性的连接 Elements pngs = doc.select("img[src$=.png]");//所有引用png图片的元素 Element masthead =doc.select("div.masthead").first();
jsoup都可以作什么呢?post
一、CMS系统常常使用来作新闻的抓取(爬虫)url
二、防止XSS攻击。跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆。故将跨站脚本攻击缩写为XSS
spa
二、站点的攻击、破坏(需要熟悉HTTP协议)
code