{"library":"requestsexceptions","title":"Requests Exceptions","description":"requestsexceptions is a simple utility library designed to normalize the import paths for exceptions within the popular 'requests' HTTP library. It addresses scenarios where 'requests' might bundle 'urllib3' or be distributed with 'urllib3' unbundled, which can lead to inconsistencies when trying to catch specific exceptions like `urllib3.exceptions.HTTPError`. The library provides a unified way to import these exceptions, regardless of the underlying 'requests' packaging. Its current version is 1.4.0, released in February 2018, indicating a maintenance-focused cadence.","language":"python","status":"maintenance","last_verified":"Fri May 15","install":{"commands":["pip install requestsexceptions"],"cli":null},"imports":["from requestsexceptions import ConnectionError","from requestsexceptions import HTTPError","from requestsexceptions import Timeout","from requestsexceptions import RequestException"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import requests\nfrom requestsexceptions import ConnectionError, Timeout, HTTPError, RequestException\n\ndef fetch_url(url):\n    try:\n        response = requests.get(url, timeout=1)\n        response.raise_for_status() # Raises HTTPError for bad responses (4xx or 5xx)\n        print(f\"Successfully fetched {url}, status: {response.status_code}\")\n    except ConnectionError:\n        print(f\"Connection error occurred for {url}.\")\n    except Timeout:\n        print(f\"Request timed out for {url}.\")\n    except HTTPError as e:\n        print(f\"HTTP error for {url}: {e.response.status_code}\")\n    except RequestException as e:\n        print(f\"An unexpected Requests error occurred for {url}: {e}\")\n    except Exception as e:\n        print(f\"An non-Requests error occurred for {url}: {e}\")\n\nfetch_url('https://httpbin.org/status/200')\nfetch_url('https://httpbin.org/status/404')\nfetch_url('http://nonexistent.domain.xyz')\nfetch_url('https://httpbin.org/delay/5')","lang":"python","description":"This quickstart demonstrates how to use `requestsexceptions` to catch various network and HTTP-related errors when making requests using the 'requests' library. It covers `ConnectionError`, `Timeout`, `HTTPError`, and the general `RequestException`.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-15","installed_version":"1.4.0","pypi_latest":"1.4.0","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":1.6,"avg_import_s":null,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"17.8M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":1.6,"import_time_s":null,"mem_mb":null,"disk_size":"18M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"19.6M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":1.7,"import_time_s":null,"mem_mb":null,"disk_size":"20M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"11.5M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":1.5,"import_time_s":null,"mem_mb":null,"disk_size":"12M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"11.2M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":1.4,"import_time_s":null,"mem_mb":null,"disk_size":"12M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"17.3M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"requestsexceptions","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"broken","install_time_s":1.9,"import_time_s":null,"mem_mb":null,"disk_size":"18M"}]}}