python
import requests
from requests.exceptions import Timeout, RequestException
def validate_input(input_data):
if not isinstance(input_data, str):
raise ValueError("Invalid input data type. Expected string.")
if not input_data.isalpha():
raise ValueError("Invalid input data format. Expected alphabetic characters only.")
def make_request(url, retries=3):
session = requests.Session()
retries_count = 0
while retries_count < retries:
try:
response = session.get(url, timeout=5)
response.raise_for_status()
return response.content
except (Timeout, RequestException) as e:
retries_count += 1
print(f"An error occurred: {str(e)}")
print(f"Retrying request... (attempt {retries_count}/{retries})")
raise Exception("Failed to make request after multiple retries.")
try:
validate_input(input_data)
url = f"https://example.com/api/?param={input_data}"
response = make_request(url)
print(response)
except ValueError as ve:
print(f"Invalid input: {str(ve)}")
except Exception as e:
print(f"An error occurred: {str(e)}")