簡體   English   中英

繞過 requests.get 的速率限制

[英]Bypass rate limit for requests.get

我想不斷地抓取一個網站 - 每 3-5 秒一次

requests.get('http://www.example.com', headers=headers2, timeout=35).json()

但是示例網站有一個速率限制,我想繞過它。 我怎么能這樣?? 我想過用代理來做,但希望有其他方法嗎?

你將不得不做一些非常低級的事情。 利用可能的套接字和 urllib2。
首先做你的研究。 他們如何限制您的查詢率? 是通過 IP,還是基於會話(服務器端 cookie)或本地 cookie? 我建議您手動訪問該站點作為研究的第一步,並使用 Web 開發人員工具查看所有通信的標題。

一旦你想通了這一點,就制定一個計划來操縱它。 假設它是基於會話的,您可以利用多個線程來控制刮刀的多個單獨實例,每個實例都有獨特的會話。

現在,如果它是基於 IP 的,那么您必須欺騙您的 IP,這要復雜得多。

只是買了相當多的代理。 並配置腳本在服務器限速時間后將代理更改為下一個。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM