为 HTTP Web 请求引发没有回溯文本的异常
Raise Exception without traceback text for HTTP web requests
我有这段代码,在第二个 link 它应该引发异常 404。
问题是我确实按照我编码的方式得到了消息,但我也得到了回溯消息,就像我的代码有问题一样。
这是一个名为“get_headers_if”的函数,输入是 response_url 或 response_url_2。
import requests
import json
def get_headers_if(response):
if response.status_code==200:
headers=response.headers
print("The headers for this URL:", response.url, "are: ",headers)
else:
raise Exception("Unexpected response (%s: %s)." % (response.status_code, response.reason))
response_url=requests.get("http://wikipedia.org")
response_url_2=requests.get("http://google.com/thehearthisflat")
get_headers_if(response_url)
get_headers_if(response_url_2)
您可以提出状态并进行异常处理。默认情况下,请求库提供了一个选项来检查状态代码并引发异常。您可以在异常打印语句中修改异常打印的内容。
import requests
def get_headers_if(response):
try:
response.raise_for_status()
headers=response.headers
print("The headers for this URL:", response.url, "are: ",headers)
except requests.exceptions.HTTPError as err:
print("Unexpected response (%s)." % err)
response_url=requests.get("http://wikipedia.org")
response_url_2=requests.get("http://google.com/thehearthisflat")
get_headers_if(response_url)
get_headers_if(response_url_2)
我有这段代码,在第二个 link 它应该引发异常 404。
问题是我确实按照我编码的方式得到了消息,但我也得到了回溯消息,就像我的代码有问题一样。
这是一个名为“get_headers_if”的函数,输入是 response_url 或 response_url_2。
import requests
import json
def get_headers_if(response):
if response.status_code==200:
headers=response.headers
print("The headers for this URL:", response.url, "are: ",headers)
else:
raise Exception("Unexpected response (%s: %s)." % (response.status_code, response.reason))
response_url=requests.get("http://wikipedia.org")
response_url_2=requests.get("http://google.com/thehearthisflat")
get_headers_if(response_url)
get_headers_if(response_url_2)
您可以提出状态并进行异常处理。默认情况下,请求库提供了一个选项来检查状态代码并引发异常。您可以在异常打印语句中修改异常打印的内容。
import requests
def get_headers_if(response):
try:
response.raise_for_status()
headers=response.headers
print("The headers for this URL:", response.url, "are: ",headers)
except requests.exceptions.HTTPError as err:
print("Unexpected response (%s)." % err)
response_url=requests.get("http://wikipedia.org")
response_url_2=requests.get("http://google.com/thehearthisflat")
get_headers_if(response_url)
get_headers_if(response_url_2)