簡(jiǎn)書首頁數(shù)據(jù)抓取的答疑

有幾位簡(jiǎn)友留言問到簡(jiǎn)書首頁數(shù)據(jù)的抓取問題,說只能抓取到20條數(shù)據(jù),如何抓取到更多;簡(jiǎn)書首頁數(shù)據(jù)分頁加載是怎么樣處理?

我用chrome -- 檢查 -- network 分析一下,截圖來說明。我是按這樣的順序來進(jìn)行分析的。

  1. 弄清分頁加載的方式
  • 著重分析第2頁url,找出構(gòu)造url參數(shù)的規(guī)律
  • 在第3頁中驗(yàn)證

分頁加載方式在前面文章中講過,無非3種方式,簡(jiǎn)書首頁采用的是滾動(dòng)加載,直接滾動(dòng)加載第2頁,查看url進(jìn)行分析:

構(gòu)成第2頁url中有20個(gè)id的參數(shù),加上page=2,需要回到加載首頁時(shí)看看這20個(gè)id是如何得到的。

發(fā)現(xiàn)就是文章<li>的id,這個(gè)可以在第一次抓取時(shí)獲得,這樣就可以構(gòu)造成第二頁的一長串的URL

再驗(yàn)證一下第3頁的URL,發(fā)現(xiàn)這個(gè)時(shí)候id的數(shù)量增加了。增加的是從哪里來的?

核對(duì)一下,這些id包含了前兩次加載的頁面的<li>id值,這樣構(gòu)成第3頁的url,在編寫代碼的過程中,我發(fā)現(xiàn)直接構(gòu)造了這樣的URL,還是不能抓取到第2頁或第3頁的數(shù)據(jù),仍然是第一頁的數(shù)據(jù)。從抓包和請(qǐng)求上查看,這時(shí)我已經(jīng)構(gòu)造了完整的請(qǐng)求的URL。

回過頭來比較一下,第一次(首頁)加載的數(shù)據(jù)和后面分頁加載的數(shù)據(jù)有什么不同。

后面的分頁加載的直接是xml數(shù)據(jù),請(qǐng)求的是XMLHttpRequest,修改一下請(qǐng)求頭headers,再次抓取,就會(huì)看到抓取的是分頁數(shù)據(jù)了。


在這篇文章中 Python爬取數(shù)據(jù)的分頁分析,簡(jiǎn)書七日熱門和三十熱門抓取時(shí),網(wǎng)頁結(jié)構(gòu)基本與首頁相似,我對(duì)URL做了簡(jiǎn)化處理,不影響數(shù)據(jù)的獲取,為什么在抓取首頁數(shù)據(jù)時(shí)要傳遞這么復(fù)雜的參數(shù),大家可以思考一下。

最后編輯于
?著作權(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),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • 上一篇文章 簡(jiǎn)書首頁數(shù)據(jù)抓取的答疑 ,分析了在抓取簡(jiǎn)書首頁時(shí)的問題,還有一些小的細(xì)節(jié)需要注意。 一、Scrapy:...
    向右奔跑閱讀 1,032評(píng)論 0 5
  • 本該昨天完成的文章,拖了一天??赡苁菦]休息好吧,昨天的在思路以及代碼處理上存在很多問題,廢話不多說,我們一起來看一...
    TinyPiXOS閱讀 5,325評(píng)論 2 23
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,108評(píng)論 25 709
  • 更新于9.25,這是關(guān)于大學(xué)生支教的記錄,后期支教結(jié)束有部分團(tuán)體旅游的記錄。無論外界對(duì)大學(xué)生支教評(píng)價(jià)如何,很多事情...
    桃籽霽閱讀 689評(píng)論 0 8
  • 我在陽臺(tái)放歌 風(fēng)輕輕地 我想我該寫點(diǎn)什么 寫山寫樹寫鳥飛過 寫白云和藍(lán)色 倒不如寫此刻的感覺 作為一個(gè)詩人的感覺 ...
    曉曉博士閱讀 193評(píng)論 4 4

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