fromhttpimportHTTPStatusfrommailboximportMessagefromurllib.errorimportHTTPErrorfromurllib.requestimporturlopentry:
urlopen("http://asadsad.sd")
exceptHTTPErrorasexception:
content=exception.fp.read()
print(type(content))
error=HTTPError(url="url", code=HTTPStatus.IM_A_TEAPOT, msg="msg", hdrs=Message(), fp=None)
print(type(error.fp.read()))<class 'bytes'>
<class 'str'>
Due to https://github.com/python/cpython/pull/99966/files
However, this returns a bytes stream on the live run:
Linked PRs