(1)doc.getElementsByTag(String tagName);

(2)doc.getElementById(String id);

(3)doc.getElementsByClass(String className);

(4)doc.getElementsByAttribute(String key);

elements=document.getElementsByAttribute("width");
for(Element e:elements){
System.out.println(e.toString());
}

  

(5)doc.getElementsByAttributeValue(String key,String value);

示例:通过key-value查找src=“/images/logo_small.gif”的元素

		//根据key-value名称来查询DOM(查找src="")
elements=document.getElementsByAttributeValue("src", "/images/logo_small.gif");
System.out.println(elements.get(0).toString());

示例:通过key-value查找target=“_blank”的元素

		elements=document.getElementsByAttributeValue("target","_blank");
for(Element e:elements){
System.out.println(e.toString());
}

  

使用document.select();选择元素

通过class一级一级往下找

package com.oracle.zibo;

import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements; public class Demo2 { public static void main(String[] args) throws Exception {
CloseableHttpClient closeableHttpClient=HttpClients.createDefault();
HttpGet httpGet=new HttpGet("http://www.bootcss.com/"); CloseableHttpResponse closeableHttpResponse=closeableHttpClient.execute(httpGet);
HttpEntity httpEntity=closeableHttpResponse.getEntity(); //获取实体、网页内容 String str=EntityUtils.toString(httpEntity, "utf-8"); closeableHttpResponse.close();
closeableHttpClient.close(); Document document=Jsoup.parse(str); //解析网页 //查找bootstrap主页下的所有标题
Elements elements=document.select(".row .thumbnail .caption h3 a");
for(Element e:elements){
System.out.println(e.text());
}
} }

  

使用a["href"]

查找所有带href属性的a标签

		//查找a[href]
Elements elements=document.select("a[href]");
for(Element e:elements){
System.out.println(e.html());
}

使用"img[src$=.png]"

查找扩展名为.png的图片的元素

		Elements elements=document.select("img[src$=.png]");
for(Element e:elements){
System.out.println(e.toString());
}

  

取得我们需要的信息

		Elements elements=document.select("img[src$=.png]");
for(Element e:elements){
System.out.println(e.toString());
System.out.println(e.text()); //取得标签中的内容
System.out.println(e.html()); //取得标签中的html代码
System.out.println(e.attr("src")); //取得某属性的属性值
}

e.attr(属性),返回属性值

.first()取得第一个

.last()取得最后一个

Element element=document.select("img[src$=.gif]").first();
System.out.println(element.attr("src")); //取得某属性的属性值

  

Jsoup获取DOM元素的更多相关文章

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

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

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

    1.获取博客园的博客标题以及博客地址,获取友情链接 2.代码实现: public static void main(String[] args) throws Exception{ // 创建http ...

  3. Jsoup(二)-- Jsoup查找DOM元素

    一.Jsoup查找DOM元素的方法 getElementById(String id) 根据id 来查询DOM getElementsByTag(String tagName) 根据tag 名称来查询 ...

  4. (二)Jsoup 查找 DOM 元素

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

  5. Jsoup查找dom元素

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

  6. 通过class和id获取DOM元素的区别

    1.通过id获取DOM元素的方法:document.getElementById("id名") 2.通过class获取DOM元素的方法:document.getElementsBy ...

  7. JS1 js获取dom元素方法

     js获取dom元素方法  1.通过ID选取元素(getElementById) 1)使用方法:document.getElementById("domId")         其 ...

  8. 获取DOM元素位置和尺寸大小

    JavaScript获取DOM元素位置和尺寸大小 在一些复杂的页面中经常会用JavaScript处理一些DOM元素的动态效果,这种时候我们经常会用到一些元素位置和尺寸的计算,浏览器兼容性问题也是不可忽 ...

  9. vue获取dom元素内容

    通过ref来获取dom元素 在vue官网上对ref的解释 ref 被用来给元素或子组件注册引用信息.引用信息将会注册在父组件的 $refs 对象上.如果在普通的 DOM 元素上使用,引用指向的就是 D ...

随机推荐

  1. 绕过安全狗Apache4.0版本

    参数拦截:script.空格and空格.空格or空格.union select.user() 绕过: and.order by绕过:  内联注释 union select绕过: union%23%0a ...

  2. Parameter setting for Jemeter Post method

    1. create CSV file note: the first line is parameter name 2. Add Controller Edit >Add >Logic C ...

  3. python函数-语句

    一.def语句和参数 #!/usr/bin/env python #coding:utf-8 def hello(name): print('Hello ' +name) hello('dingkai ...

  4. 实列+JVM讲解类的实列化顺序

    刨根问底---类的实列化顺序 开篇三问 1什么是类的加载,类的加载和类的实列有什么关系,什么时候类加载 2类加载会调用构造函数吗,什么时候调用构造函数 3什么是实列化对象,实列化的对象有什么东西. 我 ...

  5. HTML5随记

    1.浏览器加载HTML的过程是从上至下,因此引用的第三方js文件一定要放到自己定义的js文件的前面,否则引入的js文件将会在加载时失效. 2.html的全局属性包括:accesskey.content ...

  6. k3 cloud中获取年月日

    日期类型字段元素.Date.Year(获取年) 日期类型字段元素.Date.Month(获取月)日期类型字段元素.Date.Day(获取天)

  7. Docker实战部署应用——MySQL5.7

    MySQL 部署 拉取MySQL镜像 拉取命令: docker pull mysql:5.7 查看镜像 docker images 创建 MySQL 容器 docker run -id --name= ...

  8. spring data jpa和spring data redis同时配置时,出现Multiple Spring Data modules found, entering strict repository configuration mode错误

    问题说明 data jpa和data redis同时配置时,出现Spring modules spring Spring Data Release Train <dependencyManage ...

  9. 四轴飞行器飞行原理与双闭环PID控制

    四轴轴飞行器是微型飞行器的其中一种,相对于固定翼飞行器,它的方向控制灵活.抗干扰能力强.飞行稳定,能够携带一定的负载和有悬停功能,因此能够很好地进行空中拍摄.监视.侦查等功能,在军事和民用上具备广泛的 ...

  10. Thread类与Runnable接口

    Runnable 先看看源码中对Runnable的声明 @FunctionalInterface public interface Runnable { /** * When an object im ...