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.pswp.cn/news/397605.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/397605.shtml
英文地址,請注明出處:http://en.pswp.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…