[英]Whats the rate limit of google
當我在一段時間后運行代碼時,它給了我代碼:429,這意味着已經向該 URL 發出了太多請求,所以過了一會兒,我再次嘗試了不同之處,即我添加了最多 10 秒的延遲,但仍然給了我代碼。 (429)
這是代碼:
import requests
import time
query = "programming"
while True:
response = requests.get('https://www.google.com/search?q=' + query)
print (response.status_code)
time.sleep(10) # How much delay should I add?
output:
.
.
.
200
200
200
429
429
429
429
429
429
.
.
.
我的問題是,我應該添加多少延遲才能使代碼全天(如 12 小時)運行,響應代碼為 200?
我在做理想的方式嗎? 因為我在 web 上發現了一些關於google 的配額和定價的信息,並且想知道這是否與這種情況有關。
您正在使用谷歌最終用戶前端(人類在谷歌上看到和使用的東西)。 沒有關於其速率限制的文檔,因為我認為他們不希望您以編程方式使用它。
為了以編程方式獲取搜索結果,我認為您應該使用Google 自定義搜索 JSON API ,它每天免費提供 100 個調用。
這對我有用。 搜索間隔 30-40 秒。
from random import randint
from time import sleep
#other imports (google API)
sleep(randint(30,40))
避免這種情況的最佳方法是使用VPN或代理來克服谷歌的速率限制。 我建議在 100 個請求后切換 IP 有許多免費 VPN 和免費代理站點
免費代理是一個讓人頭疼的問題。你可以參考這個項目
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.