一些小爬蟲

很久沒更新簡書了, 今天更新一點(diǎn)關(guān)于爬蟲的東西

spiders

1. 爬取boss直聘上的Python崗位

構(gòu)造URL, 獲取網(wǎng)頁上的數(shù)據(jù), 解析URL, 獲取需要的信息存入字典

2. 爬取蘑菇街網(wǎng)站上所有種類的商品(未去重)

爬取蘑菇街網(wǎng)站上的所有商品比較復(fù)雜, 想獲取全部的商品, 突破口就是商品的種類.
    1. 首先隨便選取一個(gè)商品種類,點(diǎn)進(jìn)去后,可以發(fā)現(xiàn)這里面直接就會(huì)出現(xiàn)很多商品
    1. 蘑菇街并沒有使用url進(jìn)行分頁處理, 更多的數(shù)據(jù)是放在一個(gè)個(gè)XHR文件中的list.mogujie.com/search?
      (獲取這個(gè)文件, 你可以使用Chrome打開開發(fā)者模式,在Network中, 你向下滑動(dòng), 頁面就會(huì)加載新的元素, 帶有數(shù)據(jù)的文件就找到了)
    1. 我們會(huì)發(fā)現(xiàn)這個(gè)文件后面跟的參數(shù), 就是對(duì)應(yīng)的商品的分類,有很大一部分參數(shù)是沒用的, 所以可以自己剔除掉,方便后面自己構(gòu)建URL. 我發(fā)現(xiàn)區(qū)分種類的參數(shù)是'fcid'后面跟的參數(shù), 所以就去尋找該參數(shù)在哪里出現(xiàn)的.
    1. 分析得出, 商品種類應(yīng)該是和首頁里面的欄目里面的數(shù)據(jù)是對(duì)應(yīng)的 所以去蘑菇街首頁找到存放所有種類的'fcid'的文件(mce.mogucdn.com/jsonp/multiget/3?pids=110119), 這樣就可以得到所有的種類了.
    1. 循環(huán)遍歷,構(gòu)造單個(gè)種類頁面的URL. 同一種類的商品是通過改變page來實(shí)現(xiàn)頁面加載的, 所以將頁面page與種類fcid一起傳入url, 就能得到商品的詳細(xì)信息.
    1. 通過python連接數(shù)據(jù)庫, 構(gòu)造SQL語句,將爬取的內(nèi)容存入數(shù)據(jù)庫(數(shù)據(jù)量有點(diǎn)大,我最終爬了下來的數(shù)據(jù)共2107275條(未去重))
蘑菇街?jǐn)?shù)據(jù).png

3. 爬取蝦米音樂排行榜前100的歌曲(下載)

- 凱撒密碼
 通過URL打開蝦米音樂的排行榜, 進(jìn)入開發(fā)者模式, 找到歌曲信息的位置.
 網(wǎng)頁構(gòu)成中, 有一個(gè)table里面的tr有'data-mp3'屬性.
 應(yīng)該能猜到, 歌曲的數(shù)據(jù)應(yīng)該就和這個(gè)有關(guān)系了, 但是這里面的文字雜亂無章, 很明顯不是歌曲的直接URL
 該地址是加密過的, 通過凱撒密碼解密,能得到它真正的URL
 獲取到歌曲地址的url就能直接解析歌曲了, 然后通過二進(jìn)制存儲(chǔ)該數(shù)據(jù), 就能把歌曲下載下來了

4. 破解1KKK漫畫的圖像旋轉(zhuǎn)點(diǎn)擊驗(yàn)證

1kkk驗(yàn)證碼.png
 1KKK漫畫網(wǎng)站, 登錄注冊(cè)時(shí)是通過點(diǎn)擊動(dòng)漫人物頭像,使頭像轉(zhuǎn)正后完成驗(yàn)證. 每次點(diǎn)擊, 圖像會(huì)順時(shí)針旋轉(zhuǎn)90°.
 但是電腦并不能自己識(shí)別圖像的正反, 所以涉及到簡單的機(jī)器學(xué)習(xí).
 首先去查看圖像驗(yàn)證碼的地址, 發(fā)現(xiàn)每個(gè)頭像都是由四個(gè)不同方向的小圖組成.
 通過對(duì)圖像地址的URL的反復(fù)調(diào)用,可以得到新的圖像.所以, 循環(huán)執(zhí)行url,盡可能得到驗(yàn)證碼圖庫里面的頭像.
 裁剪獲得小頭像(和驗(yàn)證碼中的頭像等大), 通過代碼去重, 去重的主要目的是為了提高代碼的執(zhí)行效率.
 將所有的頭像都轉(zhuǎn)正. 通過selenium 模擬登錄, 打開界面后截取,第一張小圖, 然后和自己得到的正向頭像圖庫一一對(duì)比.
 如果有相同的圖片,則說明驗(yàn)證碼圖片為正向, 不必旋轉(zhuǎn); 若比較完成后,沒有相同的圖片,模擬點(diǎn)擊該圖片一次.
 后面三張驗(yàn)證碼道理同上; 若旋轉(zhuǎn)三次后, 驗(yàn)證都為通過, 則有可能是圖庫中的頭像沒有獲取完全, 此時(shí)模擬點(diǎn)擊換一組, 重新執(zhí)行驗(yàn)證
1kkk驗(yàn)證碼(正).png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,355評(píng)論 25 708
  • 用兩張圖告訴你,為什么你的 App 會(huì)卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 14,128評(píng)論 2 59
  • 今天黃老師給柔柔和瑤瑤出了一個(gè)主題,叫做——會(huì)飛的房子 柔柔也隨著黃老師一步步的引導(dǎo),開始腦洞大開,噴射火箭都出來...
    畫三兩閱讀 149評(píng)論 0 0
  • 在清明節(jié)到來之際,一位看起來30多歲的女人帶著一套舊衣服,拿著鐵鍬,來到山腳下。只見她挖了一個(gè)坑,丟下舊衣服。然后...
    曉行之閱讀 612評(píng)論 0 50
  • 日念一好,加持幸福。 念老公好:說走就走,去云南旅游了。幾年來辛苦工作,也沒有出去玩一下。外出幾天,記得每天跟老婆...
    悠悠白樺林閱讀 238評(píng)論 0 0

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