使用java技術抓取網(wǎng)站上彩票雙色球信息詳解
前言
現(xiàn)在很多web應用,做過web項目的童鞋都知道,web結果由html+js+css組成,html結構都有一定的規(guī)范,數(shù)據(jù)動態(tài)交互可以通過js實現(xiàn)。
有些時候,需要抓取某一個你感興趣的網(wǎng)站信息,一個網(wǎng)站信息肯定是通過某一個url,發(fā)送http請求,根據(jù)地址定位的,當知道這個地址,可以獲取到很多的網(wǎng)絡響應,需要認真分析,找到你那一個合適的地址,最后通過這個地址返回一個html給你,我們可以得到這個html,分析結構,解析這個結構獲取你要的數(shù)據(jù)。Html的結構解析往往是復雜繁瑣的,我們可以使用java的支持包:jsoup,可以完成發(fā)送請求,解析html等功能,得到你感興趣的數(shù)據(jù)。
下面就以一個彩票網(wǎng)站為例來簡單說明整體操作流程,分為以下幾大步驟:
- 根據(jù)官網(wǎng),定位到自己感興趣的模塊:雙色球
- 分析頁面,找到它的入口地址
- 獲取地址,使用jsoup發(fā)送請求,獲取返回的Document對象
- 分析Document對象,獲取感興趣的數(shù)據(jù)
1:根據(jù)官網(wǎng),定位到自己感興趣的模塊:雙色球:
本人選擇的500彩票網(wǎng)站:請根據(jù)以下步驟,找到雙色球板塊。
2:分析頁面,找到它的入口地址
發(fā)現(xiàn)右側(cè)有一個下拉選擇框,這個是歷史雙色球開獎期號。改變這個值,瀏覽器會重新去請求這期的開獎信息,確定地址是:
http://kaijiang.500.com/shtml/ssq/選擇期號.shtml
3:獲取地址,使用jsoup發(fā)送請求,獲取返回的Document對象
創(chuàng)建一個maven工程,導入jsoup的依賴:在你java類中,向2地址發(fā)送請求:獲取返回的頁面數(shù)據(jù):
返回的html頁面內(nèi)容比較多,就不貼在這里的,下面直接對這個頁面分析(特別說明,每一個html的結構不是一成不變的,有可能當讀者看到這篇文章的時候,網(wǎng)站修改了網(wǎng)頁結構,那么你需要重新分析,當然,估計這個網(wǎng)站修改網(wǎng)頁結構的可能性比較小。。。。。。)
4:分析Document對象,獲取感興趣的數(shù)據(jù)
雙色球由6個紅球+1個籃球組成,通過分析網(wǎng)頁,是通過class來表示的,網(wǎng)頁源碼如下:
通過以下代碼,獲取到6個紅球:
同理,可以獲取到1個籃球。
根據(jù)這個原理,你可以獲取你想要的很多的數(shù)據(jù):以下是本人獲取的數(shù)據(jù)
以上是個人對java中簡單抓取網(wǎng)頁數(shù)據(jù)的分享,感興趣的童鞋可以自己的實踐一下,實踐出真知。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Spring MVC-@RequestMapping注解詳解
@RequestMapping注解的作用,就是將請求和處理請求的控制器方法關聯(lián)起來,建立映射關系。這篇文章主要給大家介紹了關于SpringMVC中@RequestMapping注解用法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-04-04java使用XSSFWorkbook實現(xiàn)讀寫Excel
這篇文章主要為大家詳細介紹了java如何通過使用XSSFWorkbook實現(xiàn)讀寫Excel功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2024-04-04關于Java單個TCP(Socket)連接發(fā)送多個文件的問題
這篇文章主要介紹了關于Java單個TCP(Socket)連接發(fā)送多個文件的問題,每次我只能使用一個 Socket 發(fā)送一個文件,沒有辦法做到連續(xù)發(fā)送文件,本文來解決這個問題,需要的朋友可以參考下2023-04-04java實現(xiàn)創(chuàng)建臨時文件然后在程序退出時自動刪除文件
這篇文章主要介紹了java實現(xiàn)創(chuàng)建臨時文件然后在程序退出時自動刪除文件,從個人項目中提取出來的,小伙伴們可以直接拿走使用。2015-02-02