Python學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

前文,下載了一個圖片網(wǎng)站,但是素材還是不夠,我希望的是GIF素材,所以又找了一個網(wǎng)站。

下載這些圖片的目的,是在進(jìn)行動圖創(chuàng)作、視頻編輯的時候,感到素材太少,所以需要爬以下,獲得一些素材。

分享之前我還是要推薦下我自己建的Python開發(fā)學(xué)習(xí)群:628979297,群里都是學(xué)Python開發(fā)的,如果你正在學(xué)習(xí)Python ,小編歡迎你加入,今天分享的這個案例已經(jīng)上傳到群文件,大家都是軟件開發(fā)黨,不定期分享干貨(只有Python軟件開發(fā)相關(guān)的),包括我自己整理的一份2018最新的Python進(jìn)階資料和高級開發(fā)教程,歡迎進(jìn)階中和進(jìn)想深入Python的小伙伴。

如果喜歡視頻編輯的話,可以下載我的另一款軟件:任性小視頻

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

根據(jù)主類別,創(chuàng)建本地目錄,

將主類別對應(yīng)的網(wǎng)址,下載下來

看網(wǎng)頁源碼

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

創(chuàng)建好的主類別如下

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

代碼如下:

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

目前,我們將主類別創(chuàng)建成功了,而且主類別目錄下,是其對應(yīng)的網(wǎng)頁

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

下圖為主類別網(wǎng)頁

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

網(wǎng)頁源碼如下:

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

子類別位于class=cat的DIV下

標(biāo)簽的對應(yīng)的類 class="sidebar-letter"

下面,我們加載這個主類別網(wǎng)頁,然后,在這個網(wǎng)頁中搜尋子類別信息

首先獲得gif目錄下的所有子文件夾

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

然后獲得子目錄下存放的TXT網(wǎng)頁,對此網(wǎng)頁進(jìn)行解析,獲得所需的子類別信息,

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

代碼:

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

最后,根據(jù)子類別信息,創(chuàng)建子類別目錄,及子類別對應(yīng)的網(wǎng)頁

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

至此,我們將原網(wǎng)站中對應(yīng)的類別信息,已經(jīng)下載下了。

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

代碼:

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

注意了,前面寫的那么多,要廢除了,但是前面也并不是一點作用也沒有,而是為了更好的分析

很多時候就這樣,并不能一下子就找到正確的方法,就是要在不斷的調(diào)試,不斷的分析后,才能找到更好的策略

我發(fā)現(xiàn),這個網(wǎng)站,并不是嚴(yán)格的幾層分類,分類層數(shù)不一定,又仔細(xì)看了下源碼,不管是主分類網(wǎng)頁,還是次分類網(wǎng)頁,他們的div的類別都是相同的。

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

而A分類下的子類別accordions下,可能還有子分類,也可能沒有子分類。

判斷accordions下還沒有子分類的方式:

下載網(wǎng)頁

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

看看此網(wǎng)頁中是否還有

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

如果還有,則繼續(xù)創(chuàng)建類別

這是一個遞歸創(chuàng)建的過程,所以我將上面的程序重新推到,重新寫了個遞歸算法。

用這幾句代碼,就可以正確的創(chuàng)建網(wǎng)站類別了。

ython學(xué)習(xí) 三 01 再爬一個網(wǎng)站,幾行代碼,搞定分類類別

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容