前文,下載了一個圖片網(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)站,幾行代碼,搞定分類類別