java jsoup爬取动态网页_java通过Jsoup爬取网页(入门教程)

一,导入依赖

org.jsoup

jsoup

1.10.3

org.apache.httpcomponents

httpclient

二,编写demo类

注意不要导错包了,是org.jsoup.nodes下面的

package com.taotao.entity;

import org.apache.http.HttpEntity;

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;

import java.io.IOException;

/**

* Author: TaoTao 2019/9/26

*/

public class intefaceTest {

public static void main(String[] args) throws IOException {

CloseableHttpClient httpClient = HttpClients.createDefault();//创建httpClient

HttpGet httpGet = new HttpGet("http://www.cnblogs.com/");//创建httpget实例

CloseableHttpResponse response = httpClient.execute(httpGet);//执行get请求

HttpEntity entity = response.getEntity();//获取返回实体

String content = EntityUtils.toString(entity,"utf-8");//网页内容

response.close();//关闭流和释放系统资源

Jsoup.parse(content);

Document doc = Jsoup.parse(content);//解析网页得到文档对象

Elements elements = doc.getElementsByTag("title");//获取tag是title的所有dom文档

Element element = elements.get(0);//获取第一个元素

String title = element.text(); //.html是返回html

System.out.println("网页标题:"+title);

Element element1 = doc.getElementById("site_nav_top");//获取id=site_nav_top标签

String str = element1.text();

System.out.println("str:"+str);

}

}

标签:http,title,入门教程,jsoup,爬取,Jsoup,import,apache,org

来源: https://www.cnblogs.com/book-mountain/p/11595018.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/397605.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java设计模式之七大结构型模式

总体来说设计模式分为三大类:创建型模式、结构型模式和行为型模式。 结构型模式,共有七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 其中适配器模式主要分为三类:类的适配器模式、对象的适配…

一个Option请求引发的深度解析

在当前项目中,前端通过POST方式访问后端的REST接口时,发现两条请求记录,一条请求的Request Method为Options,另一条请求的Reuest Method为Post。想要解决这个疑惑还得从以下3个概念说起。 Http Options Method RFC2616标准&#x…

ionic+AnjularJs实现省市县三级联动效果

建议对ionic和AnjularJs有一定了解的人可以用到,很多时候我们要用到选择省份、城市、区县的功能,现在就跟着我来实现这个功能吧,用很少的代码(我这里是根据客户的要求,只显示想要显示的部分省份和其相对应的城市、区县…

md5和SHA校验码

md5已经不安全了,中国山东大学女学霸王小云破解了一系列密码,当真是巾帼不让须眉.说是破解,其实就是给你一个md5码,让你求出这个md5码所对应的原始信息,显然一个md5对应无数种原始信息.而md5的特性就是难以还原初始信息,但是王小云可以迅速找到给定md5码的可行解.md5的解空间虽…

Confluence 6 附件存储文件系统的分级

从 Confluence 3.0 开始,附件的存储方式有了重大的改变和升级。如果你是从 Confluence 2.10 及其早期版本升级上来的,请参考 Upgrading Confluence 页面中推荐的升级路径,同时请阅读 Confluence 3.0 文档中 Hierarchical File System Attachm…

Fragment与Activity交互(使用接口)

在Fragment中: 1. // 定义一个回调接口,该Fragment所在Activity需要实现该接口// 该Fragment将通过该接口与它所在的Activity交互 { public void onItemSelected(Integer id);}2. // 当该Fragment被添加、显示到Activity时,回调该方法 public void onA…

java保龄球计分_自己写的java保龄球记分

package com.java.bowlingscore1;import java.util.Arrays;public class Game { int[] bowlingScore new int[21]; //用来存放投掷击倒的数目 int ball0; //数组下标 int score;//分数 int countframe0;//记录当前是第几轮 boolean firs…

你不知道的JavaScript-0

【数组】 删除数组的几种方法: https://www.cnblogs.com/Joans/p/3981122.html http://www.cnblogs.com/qiantuwuliang/archive/2010/09/01/1814706.html 【数字转换】 parseInt(num, radix): 【宽松相等和严格相等】 允许在相等比较中进行强制类型转换&#xff0c…

真是,原来可以这样啊

一下午,解决了两个问题。。。。。 先列上这两个真是Bug的问题: 1、数据库有个表book,里面有个字段 create_time Datetime类型的字段,这个字段是 not null 的。下午下代码往数据库里插入数据时,总是提示,cre…

1026. Table Tennis (30)

题目如下: A table tennis club has N tables available to the public. The tables are numbered from 1 to N. For any pair of players, if there are some tables open when they arrive, they will be assigned to the available table with the smallest numb…

java运行时异常中文_JAVA——运行时异常(RuntimeException)

Exception中有一个特殊的子类异常RuntimeException运行时异常。如果在函数内抛出该异常,函数上可以不用声明,编译一样通过。如果在函数上声明了该异常。调用者可以不用进行处理。编译一样通过。之所以不用在函数上声明,是因为不需要让调用者处…

内置函数isinstance和issubclass

1. isinstance(obj,class) 判断对象obj是不是由class生成的对象。 class Foo:passobjFoo()print(isinstance(obj,Foo))obj是Foo的生成的对象,返回True。如果不是,则返回False。 d{x:1} #ddict({x:1} #)print(type(d) is dict) pri…

JavaOne 2016——首日亮点

今年,为期5天的JavaOne会议中,4个会场的议题都进行了直播,演讲稿也在播出之后一并提供。\\来自Terracotta公司EHCache团队的Henri Tremblay,做了主题为《学习Java 8:Lambda表达式和函数式编程(Learn Java 8…

指针数据类型 java_C/C++ 指针的小结——指针与其它数据类型(数组、字符串、函数、结构体)的关系...

一、指针与数组和字符串1、指针与数组当声明数时,编译器在连续的内存空间分配基本地址和足够的储存空间,以容纳数组的所有元素。基本地址是数组第一个元素(索引为0)的存储位置。编译器还把数组名定义为指向第一个元素的常量指针。元素的地址是通过索引和…

Linux tr命令详解

tr是个简单的替换命令,从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。 tr常见命令参数 用法:tr [选项]... SET1 [SET2] 从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。-c, -C, --complement …

512M内存编译php出错

make时错误如下 1 virtual memory exhausted: Cannot allocate memory make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1 内存小造成的,为了成功的话需要加上参数 –disable-fileinfo即可参考链接:https://bugs.php.net/bug.php?id48809 转载于…

Android中插件开发篇总结和概述

刚刚终于写完了插件开发的最后一篇文章,下面就来总结一下,关于Android中插件篇从去年的11月份就开始规划了,主要从三个方面去解读Android中插件开发原理。说白了,插件开发的原理就是:动态加载技术。但是我们在开发插件…

java反射机制 路径_Java 反射机制详解

引言本文主要介绍Java中,有关反射机制、类的加载过程、以及控制反转方面的内容。Java 反射机制Java创建对象的方式有哪些:new、反射、反序列化、克隆class对象获取的方法有哪些:类名.class、getClass、forName、classLoader.loadClass(‘包类…

prop和attr在 jquery的

https://www.cnblogs.com/Showshare/p/different-between-attr-and-prop.html转载于:https://www.cnblogs.com/beimingbingpo/p/9254680.html

java传入数据库生成柱状图_Java读取数据库数据生成柱状图

此案例是用swing显示数据的。须要引入jfreechart相关包。不同版本号可能包不同样。本人用的是此案例在ssi框架下会报错,不用框架就没问题。Java后台逻辑代码:public class BarChart {ChartPanel frame1;public BarChart() {CategoryDataset dataset get…