一、简介
通过解析url 获得html页面(静态页面),解析页面后可以获取页面DOM获取页面信息
二、步骤
步骤:
解析URl获取Document
通过解析Document获取(Element或者Elements) 可以再进一步解析(Element或者Elements)来获取到最终的目标(Element或者Elements)
三、解析URL
(url,超时时间) Jsoup.parse(new URL(),xx) 返回Document对象
四、标签页面解析
1、获取DOM(获取标签 类似js选定)
根据标签获取
返回值是Elements
Elements elements= document.getElementsByTag("a");
根据Class获取
返回值是 Elements
Elements elements= document.getElementsByClass("sc_adv_hatr");
根据id获取
反返回值是Element
Element element= document.getElementById("head_wr"); //获取元素
根据标签属性获取
获取标签中具有 某个属性的元素
Elements elements= document.getElementsByAttribute("data-log");
根据标签属性和属性值来获取
Elements elements= document.getElementsByAttributeValue("data-log","{'type':'mycollect'}");
通过选择器获取元素(选定元素标签,类似CSS选定)
* Element或Elements数据
* Elements 是Element的数组形式
* 标签查找 div
* 返回值都是Elements
* element.select("div")
* elements.select("div");
*
* 通过id查找 #xx
* 通过 #xx 匹配id 返回值都是Elements
* Elements s= elements.select("#lb");
* Elements s2= element.select("#lb");
*
* 通过类名查找 .xx
* Elements elements1= elements.select(".dl_item");
*
* 通过标签属性查找 [xx]
* Elements elements1= elements.select("[target]");
*
* 利用属性和值查找
* Elements elements1= elements.select("[href=/]");
*
*
* 支持多次查找
* Elements elements1= elements.select("[target]").select("div");
2、获取DOM数据
*从获取到的元素中提取数据(获取标签数据)
* Element数据
* 获取id(标签的id名字)
* element.id() //返回值为String
*
* 获取class属性(标签的类选择器名字)
* element.className() //返回值为String
*
* 根据属性名字获取属性值(标签的属性值,当前标签的任意属性值都可以获取)
* element.attr("data-click") //返回值为String
*
* 获取全部属性
* Attributes attribute= document.attributes(); //返回值Attributes
*
* 获取文字内容
* 标签内容出现的文字
* element.text(); //获取标签中的文字内容 (按出现顺序获取) 返回值为string