一、Jsoup查找DOM元素的方法

  getElementById(String id) 根据id 来查询DOM

  getElementsByTag(String tagName) 根据tag 名称来查询DOM

  getElementsByClass(String className) 根据样式名称来查询DOM

  getElementsByAttribute(String key) 根据属性名来查询DOM

  getElementsByAttributeValue(String key,String value) 根据属性名和属性值来查询DOM

二、代码实现

    public static void main(String[] args) throws Exception{
// 创建httpClient实例
CloseableHttpClient httpClient = HttpClients.createDefault();
// 创建httpGet实例
HttpGet httpGet = new HttpGet("http://www.cnblogs.com");
httpGet.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0");
CloseableHttpResponse response = httpClient.execute(httpGet);
String content = null;
if(response != null){
HttpEntity entity = response.getEntity();
content = EntityUtils.toString(entity, "UTF-8"); // 获取网页内容 Document document = Jsoup.parse(content); // 解析网页,得到文档对象 /**
* 1.根据tag获取元素
*/
Elements elements = document.getElementsByTag("title"); // 获取 tag为 title的DOM元素
Element element = elements.get(0); // 获取第一个DOM元素
String title = element.text(); // 返回元素的文本
System.out.println("博客园的标题:" + title); /**
* 2.根据 id获取元素
*/
Element element2 = document.getElementById("site_nav_top");
String navTop = element2.text();
System.out.println("座右铭:" + navTop); /**
* 3.根据样式获取元素
*/
Elements elements3 = document.getElementsByClass("post_item");
System.out.println("============根据样式获取元素=============");
for(Element e : elements3){
System.out.println(e.html());
System.out.println("------------------------------");
} /**
* 4.根据属性名称来查询DOM
*/
Elements elements4 = document.getElementsByAttribute("width");
System.out.println("============根据属性名称来查询DOM=============");
for(Element e : elements4){
System.out.println(e.toString());
System.out.println("------------------------------");
} /**
* 5.根据属性名和属性值来查询DOM
*/
Elements elements5 = document.getElementsByAttributeValue("target", "_blank");
System.out.println("============ 根据属性名和属性值来查询DOM=============");
for(Element e : elements5){
System.out.println(e.toString());
System.out.println("------------------------------");
}
}
if(response != null){
response.close();
}
if(httpClient != null){
httpClient.close();
}
}

三.Jsoup学习地址

  开源博客系统-Jsoup

Jsoup(二)-- Jsoup查找DOM元素的更多相关文章

  1. (二)Jsoup 查找 DOM 元素

    第一节: Jsoup 查找 DOM 元素 getElementById(String id) 根据 id 来查询 DOM getElementsByTag(String tagName) 根据 tag ...

  2. (三)Jsoup 使用选择器语法查找 DOM 元素

    第一节: Jsoup 使用选择器语法查找 DOM 元素 Jsoup使用选择器语法查找DOM元素 我们前面通过标签名,Id,Class样式等来搜索DOM,这些是不能满足实际开发需求的, 很多时候我们需要 ...

  3. Jsoup(三)-- Jsoup使用选择器语法查找DOM元素

    1.Jsoup可以使用类似于CSS或jQuery的语法来查找和操作元素. 2.实例如下: public static void main(String[] args) throws Exception ...

  4. Jsoup查找dom元素

    package com.open1111.jsoup; import org.apache.http.HttpEntity;import org.apache.http.client.methods. ...

  5. jQuery常用的查找Dom元素方法

    废话不多说,先来个总结,然后下面是demo 一. 同级节点之间的检索(检索深度N=0) next()是在兄弟节点中,往后匹配; prev()是在兄弟节点中,往前匹配. 二. 父级/子级节点的检索(检索 ...

  6. Python笔记(二)查找重复元素

    一.查找数列重复元素---count() >>> list = [,,,,,,,,,,,] >>> set = set(list) >>> for ...

  7. (四)Jsoup 获取 DOM 元素属性值

    第一节: Jsoup 获取 DOM 元素属性值 Jsoup获取DOM元素属性值 比如我们要获取博客的href属性值: 我们这时候就要用到Jsoup来获取属性的值 : 我们给下示例代码: package ...

  8. DOM元素查找

    一.DOM是document的缩写,他是操作html文档的方法 二.常用查找元素的方法 直接 1.document.getElementById('标签的id')   在html中标签的id是不允许重 ...

  9. jQuery使用(四):DOM操作之查找兄弟元素和父级元素

    查找兄弟元素 向下查找兄弟元素 next() nextAll() nextUntil() 向上查找兄弟元素 prev() prevAll() prevUntil() 查找所有兄弟元素 siblings ...

随机推荐

  1. 关于qt QWebKit/QWebview 使用心得

    当前项目为c/s客户端,采用qt4.8.7,需要使用仪表盘.折线图.柱状图等,曾经使用过qwt和自定义的图形控件,但是都不尽如人意.最近发现ECharts控件不错.为此就要在qt端使用web的技术.为 ...

  2. 实验四 使用ASP.NET内置对象 总结

    这次实验内容是ASP.NET的一些内置对象的熟悉,感觉看到了上学期JSP的影子,很多地方都很像.像Response对象,Request对象,Context对象等等.以前我老是搞混Response对象和 ...

  3. linux mongodb数据库的安装

    折腾两天, 前领导留下的烂摊子,前天忽然挂掉了, 整个公司就我会linux, 奶奶的, 一言难尽. 下面记录下怎么安装mongodb, 前面是从菜鸟教程复制来的 1. 下载 MongoDB 提供了 l ...

  4. Android Studio 出现 Build gradle project info

    导入Android Studio,一直停留在Build gradle project info.主要是因为google被墙,下载gradle很慢,有时候设置下载不成功. 参考链接 http://blo ...

  5. Java如何格式化秒数?

    在Java中,如何格式化秒数? 此示例使用SimpleDateFormat类的SimpleDateFormat('ss')构造函数和sdf.format(date)方法格式化秒数. package c ...

  6. C# IEnumerator的使用

    迭代器模式是设计模式中行为模式(behavioral pattern)的一个例子,他是一种简化对象间通讯的模式,也是一种非常容易理解和使用的模式.简单来说,迭代器模式使得你能够获取到序列中的所有元素而 ...

  7. oracle 11g RAC 在Windows 7下安装

    oracle 11g RAC 在Windows 7下安装 完全要参考RAC11gR2OnWindows.pdf 难点总是在Grid Infrastructure 而安装Grid Infrastruct ...

  8. 10.11 Linux网络相关 10.12 firewalld和netfilter 10.13 netfilter5表5链介绍 10.14 iptables语法

    Linux网络相关 ifocnfig 查看网卡ip(yum install net-tools) ip add 查看网卡 ip add = ifocnfig ifconfig 不显示down掉的网卡, ...

  9. GCT之语文细节知识

    以下是在微博中看到的,大部分人都会读错的汉字,这也是历届GCT考试的前几道选择题可能会出的题库资源吧,高考的时候也大都考的这些,拿来共享给大家.一定要看哦.

  10. Linux 目录下属性查看操作

    1. 查看当前目录所有文件和文件夹的大小 方法一: $du -sh * 或 $du -h -d 0 * '-d 0' 代表查询目录的深度为0 ,也就是当前目录,'-d 3' 表示文件目录深度为3,可以 ...