溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python爬蟲(chóng)小偏方:突破登錄和訪問(wèn)頻率限制,多研究對(duì)方不同終端產(chǎn)品

發(fā)布時(shí)間:2020-08-09 14:24:21 來(lái)源:ITPUB博客 閱讀:147 作者:程序員啟航 欄目:編程語(yǔ)言

其實(shí)在抓取數(shù)據(jù)時(shí),如果有大量的離散賬號(hào)和離散IP的話,抓取數(shù)據(jù)就問(wèn)題不大了。但是老猿相信大部分的爬蟲(chóng)選手們都沒(méi)有這么多的資源,所以就會(huì)絞盡腦汁研究和各種嘗試對(duì)方的訪問(wèn)控制策略,如果始終無(wú)法破局,這時(shí)就要跳出來(lái)想下其他辦法,比如多使用一下對(duì)方的產(chǎn)品,包括APP,網(wǎng)站,微信等,抓包看看他們之間的URL有沒(méi)有關(guān)聯(lián),訪問(wèn)控制策略是否一致等,有時(shí)你會(huì)找到新的突破口。

Python爬蟲(chóng)小偏方:突破登錄和訪問(wèn)頻率限制,多研究對(duì)方不同終端產(chǎn)品

曾經(jīng)我想要某職業(yè)社交APP里的一些用戶詳細(xì)頁(yè)的信息用來(lái)做分析,但是面臨如下問(wèn)題:

  • 該APP必須登陸才能訪問(wèn)所有頁(yè)面。
  • 你的賬號(hào)如果沒(méi)有關(guān)注對(duì)方,對(duì)方的詳細(xì)介紹頁(yè)面的很多信息就被隱藏了。
  • APP的用戶詳細(xì)頁(yè)面一個(gè)賬號(hào)大概只能訪問(wèn)100次/天(有點(diǎn)記不清具體數(shù)字了)就不能訪問(wèn)了。

就注冊(cè)了10個(gè)該APP賬號(hào),模擬登錄后一天只能抓1000千多個(gè),還有好些數(shù)據(jù)不全(因?yàn)闆](méi)有關(guān)注對(duì)方), 實(shí)在離俺想要的數(shù)據(jù)量相差較遠(yuǎn)。
總結(jié)上面的問(wèn)題就是沒(méi)有足夠多的賬號(hào),就算賬號(hào)足夠多,每個(gè)賬號(hào)和每個(gè)ip也有抓取限制。

于是就把該產(chǎn)品的APP,微信,網(wǎng)頁(yè)里里外外都翻了一遍,能點(diǎn)的地方都去點(diǎn)一下看看。

有了新的發(fā)現(xiàn):

  • 該APP的用戶詳細(xì)頁(yè)分享到微信后,通過(guò)微信打開(kāi)可以直接訪問(wèn),不需要登錄,也不需要微信授權(quán),用戶詳細(xì)頁(yè)信息都是全的(解決了需要關(guān)注才能查看全面信息問(wèn)題)。
  • 通過(guò)APP獲取分享到微信的url的接口訪問(wèn)頻率控制放得很寬松。
  • 雖然在微信上不用登錄訪問(wèn),沒(méi)有賬號(hào)限制了,但是還是有單個(gè)IP的訪問(wèn)頻率控制。

分析完后,舒緩了很多,得出新的抓取思路,就是:

使用10個(gè)賬號(hào)按一定頻次通過(guò)APP不停的獲取每個(gè)用戶詳細(xì)頁(yè)分享到微信的URL,讓另外一個(gè)程序模仿微信的user-agent不停的訪問(wèn)這些分享到微信的URL(要使用adsl撥號(hào)來(lái)解決單個(gè)IP訪問(wèn)頻率控制問(wèn)題)。
這樣通過(guò)app加微信的方式解決了對(duì)賬號(hào)的限制問(wèn)題,實(shí)現(xiàn)了曲線救國(guó)。

后來(lái)就發(fā)現(xiàn)好些抓取問(wèn)題都有這種解決思路,跟我們?cè)诰W(wǎng)絡(luò)爬蟲(chóng)小偏方之一里講的,有的網(wǎng)站為了SEO流量,而把referer來(lái)自百度的訪問(wèn)控制放寬了一樣。

有的產(chǎn)品為了微信的流量(分享到微信里的頁(yè)面可以直接打開(kāi),點(diǎn)擊其他頁(yè)面時(shí)再提示要注冊(cè)登錄),而對(duì)來(lái)自微信點(diǎn)擊訪問(wèn)控制放寬了。


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI