You can download this code by clicking the button below.
This code is now available for download.
This function defines an Aiohttp middleware that randomly selects a user agent string and sets it in the request header for each request.
Technology Stack : Aiohttp-web, aiohttp, random
Code Type : Middleware
Code Difficulty : Intermediate
def random_user_agent(request):
import aiohttp
import random
from aiohttp import web
user_agents = [
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3",
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.3 Safari/605.1.15",
"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 UBrowser/88.0.4324.104 Safari/537.36",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36"
]
def get_random_user_agent():
return random.choice(user_agents)
async def middleware_handler(request):
request.headers['User-Agent'] = get_random_user_agent()
return await request.next()
return web.middleware(middleware_handler)