質問: requests.get(url, params={'s': thing}) except requests.connectionerror, e: print e #should i also sys.exit(1) after this? これは正しいです?これを構成するためのより良い方法はありますか?これは私のすべての基地をカバーするでしょうか?
回答: 明示的にするための1つの追加の提案。特定のエラーから一般的なエラーへと移行し、目的のエラーを検出できるようにするのが最善のようです。したがって、特定のエラーが一般的なエラーによって隠されることはありません。url='http://www.google.com/blahblah' try: r = requests.get(url,timeout=3) r.raise_for_status() except requests.exceptions.httperror as errh: print ("http error:",errh) except requests.exceptions.connectionerror as errc: print ("error connecting:",errc) except requests.exceptions.timeout as errt: print ("timeout error:",errt) except requests.exceptions.requestexception as err: print ("oops: something else",err) http error: 404 client error: not found for url: http://www.google.com/blahblah vsurl='http://www.google.com/blahblah' try: r = requests.get(url,timeout=3) r.raise_for_status() except requests.exceptions.requestexception as err: print ("oops: something else",err) except requests.exceptions.httperror as errh: print ("http error:",errh) except requests.exceptions.connectionerror as errc: print ("error connecting:",errc) except requests.exceptions.timeout as errt: print ("timeout error:",errt) oops: something else 404 client error: not found for url: http://www.google.com/blahblah