1. 當請求失敗時重復請求
def get_url(url):try:response = requests.get(url, timeout=10) # 超時設置為10秒except:for i in range(10): # 循環去請求網站response = requests.get(url, proxies=proxies, timeout=20)if response.status_code == 200:breakreturn response
2. 適當增加sleep時間
mu, sigma = 5, 0.2 # 正態分布
time.sleep(norm.rvs(mu, sigma, size=1))
3. 設置代理ip
proxies = {'http': '127.0.0.1:1212','https': '127.0.0.1:1212'}
response = requests.get(url, proxies=proxies, timeout=20)