溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

java爬蟲實戰(zhàn)之模擬登陸的示例分析

發(fā)布時間:2021-04-27 14:04:47 來源:億速云 閱讀:246 作者:小新 欄目:編程語言

這篇文章主要介紹了java爬蟲實戰(zhàn)之模擬登陸的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

Java是什么

Java是一門面向?qū)ο缶幊陶Z言,可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序。

使用jsoup工具可以解析某個URL地址、HTML文本內(nèi)容,是java爬蟲很好的優(yōu)勢,也是我們在網(wǎng)絡(luò)爬蟲不可缺少的工具。本文小編帶領(lǐng)大家使用jsoup 實現(xiàn)java爬蟲模擬登陸,通過省力的API,很好的實現(xiàn)java爬蟲模擬登陸。

一、使用工具:Jsoup

jsoup 是一款Java 的HTML解析器,可直接解析某個URL地址、HTML文本內(nèi)容。它提供了一套非常省力的API,可通過DOM,CSS以及類似于jQuery的操作方法來取出和操作數(shù)據(jù)。

二、實現(xiàn)java爬蟲模擬登陸

1、確定想要爬取的url

import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.Map.Entry;
import java.util.Set;
 
import org.jsoup.Connection;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
 
public class SplitTable {
 
    public static void main(String[] args) throws IOException {
        //想要爬取的url
        String url = "http://jwcnew.nefu.edu.cn/dblydx_jsxsd/xskb/xskb_list.do?
Ves632DSdyV=NEW_XSD_PYGL";
        String username = "";
        String password = "";
        String sessionId = getSessionInfo(username,password);
        spiderWebSite(sessionId,url);
    }

2、獲取sessionId

private static String getSessionInfo(String username,String password)
 throws IOException{

3、登錄網(wǎng)站,返回sessionId信息

Connection.Response res = Jsoup.connect("http://jwcnew.nefu.edu.cn/dblydx_jsxsd/xk/LoginToXk")

4、獲得sessionId

 String sessionId = res.cookie("JSESSIONID");
        System.out.println(sessionId);
        return sessionId;
    }

5、爬取內(nèi)容

private static void spiderWebSite(String sessionId,String url) throws IOException{
 
        //爬取
        Document doc = Jsoup.connect(url).cookie("JSESSIONID", sessionId).timeout(10000).get();
        Element table = doc.getElementById("kbtable");
        //System.out.println(table);
        BufferedWriter bw = new BufferedWriter
(new OutputStreamWriter(new FileOutputStream("F:/table.html")));
        bw.write(new String(table.toString().getBytes()));
        bw.flush();
        bw.close();
    }
}

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“java爬蟲實戰(zhàn)之模擬登陸的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI