用java爬取杭电oj已ac代码
生活随笔
收集整理的這篇文章主要介紹了
用java爬取杭电oj已ac代码
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
前言
電腦的硬盤突然壞了,新安裝的eclipse的代碼全沒了,后來發(fā)現(xiàn)杭電上已經(jīng)ac的代碼可以查看到,我是個有強迫癥的人,我寧愿做很多件不同的事也不愿意做一件相同的事(復制黏貼)許多次,所以就突發(fā)奇想,做個爬蟲爬取已經(jīng)ac的代碼。
實現(xiàn)
首先打開杭電的首頁,這里有我想要的信息
這里,解決的問題的序列號事我們想要的。查看網(wǎng)頁源碼
就在這里找到我們想要的信息,我們要將他存下來,然后進去分析。
接著隨便點擊一個進去分析。
對這個圖片信息,注意鏈接是有規(guī)律的,通過簡單拼湊就可以進入,注意第一個 run id這個信息,是需要分析抓取的,然后點擊code len的鏈接。
發(fā)現(xiàn)自己的代碼就在這。發(fā)現(xiàn)鏈接,就是通過run id拼湊而來。這樣思路就清晰了。
1:抓取主頁面,獲得題目號。
2:對于每個題目號,拼湊地址進入第二個界面,在分析爬取這里的run id。
3:通過run id號拼湊地址進入有代碼的網(wǎng)頁,在通過解析工具獲取代碼。
4:通過io傳輸傳到本地文件
5:ps(解析工具:jsoup)注意要通過f12抓取登陸過的cookie模擬登陸,因為只爬一次,就直接抓取cookie值傳入。
附上代碼:
1:抓取主頁面
總結(jié)
以上是生活随笔為你收集整理的用java爬取杭电oj已ac代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 杭电1280java实现
- 下一篇: 操蛋的linux改mysql密码(105