0
有沒有辦法限制urlfetch對每個時間單元對任何單個服務器的請求數?每個域的urlfetch限制速度
我意外地拒絕了我正在爬行的網站,因爲異步urlfetch api使它分支直到它死亡(每個請求平均產生一個以上的新請求)。日誌包含〜200 DeadlineExceeded
,每個之間有一毫秒。
有沒有辦法限制urlfetch對每個時間單元對任何單個服務器的請求數?每個域的urlfetch限制速度
我意外地拒絕了我正在爬行的網站,因爲異步urlfetch api使它分支直到它死亡(每個請求平均產生一個以上的新請求)。日誌包含〜200 DeadlineExceeded
,每個之間有一毫秒。
您可以使用time.sleep()
方法。暫停當前線程的執行達到給定的秒數。
import time
[...]
for u in urls:
urllib2.urlopen(u, timeout=4)
time.sleep(1)
我看來,將由你會在你調用的URLFetch編寫代碼來控制。 AFAIK沒有這種方法。 –
只是使用任務隊列進行每次提取以限制速率 –