1. import requests
  2. def make_request_with_timeout(url, timeout):
  3. """
  4. Makes an HTTP request to the given URL with a timeout.
  5. Args:
  6. url (str): The URL to request.
  7. timeout (int): The timeout in seconds.
  8. Returns:
  9. requests.Response: The response object if the request is successful,
  10. or None if an error occurs.
  11. """
  12. try:
  13. response = requests.get(url, timeout=timeout) # Send the request with timeout
  14. response.raise_for_status() # Raise HTTPError for bad responses (4xx or 5xx)
  15. return response
  16. except requests.exceptions.RequestException as e:
  17. print(f"Error making request to {url}: {e}") # Print the error message
  18. return None
  19. if __name__ == '__main__':
  20. # Example usage
  21. url = "https://www.example.com"
  22. timeout = 5
  23. response = make_request_with_timeout(url, timeout)
  24. if response:
  25. print("Request successful!")
  26. # Process the response
  27. print(response.status_code)
  28. else:
  29. print("Request failed.")

Add your comment