【错误记录/python】requests库get请求:Remote end closed connection without response

场景

  • 在使用requests进行get请求时,由于请求比较频繁,导致报错
    	import requests
    	while True:
    		# do something
    		requests.get(url)
    
    requests.exceptions.ConnectionError: ('Connection aborted.', 
    RemoteDisconnected('Remote end closed connection without response',))
    
  • 服务器重启后可以正常返回,但是运行一段时间后依旧报错
  • 报错后浏览器可以正常访问url

解决方式

  • 网上大多数解决方法是:
    1.sleep一段时间
    2.使用UserAgent
    import requests
    
    url = 'https://www.ldoceonline.com/'
    headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36"}
    
    r = requests.get(url,headers=headers)
    
  • 但是尝试以上方法后并未解决
  • 后续查找资料后用以下方式解决
    import requests
    r = requests.get(url=url, params={'param':'1'}, headers={'Connection':'close'})
    
    详见stackoverflow

你可能感兴趣的:(python,错误记录)