WebスクレイピングやAPIクライアントを開発する際、HTTPリクエストのヘッダーにはユーザーエージェントを指定することがあります。Pythonでは、urllibモジュールを使用して簡単にユーザーエージェントを生成することができます。
以下のコードは、urllibを使用してランダムなユーザーエージェントを生成する方法を示しています。
import urllib.request
import random
user_agents = [
"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299",
"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36 OPR/45.0.2552.888",
"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.96 Safari/537.36",
]
user_agent = random.choice(user_agents)
headers = {"User-Agent": user_agent}
request = urllib.request.Request("https://www.example.com", headers=headers)
response = urllib.request.urlopen(request)
print(response.read())
上記のコードでは、user_agentsリストからランダムに1つのユーザーエージェントを選択し、HTTPリクエストのヘッダーに設定しています。urllib.request.urlopen()関数を使用して、指定されたURLにリクエストを送信し、レスポンスを取得しています。
Pythonを使用してWebスクレイピングやAPIクライアントを開発する際には、HTTPリクエストのヘッダーに適切なユーザーエージェントを設定することが重要です。urllibモジュールを使用することで、簡単にランダムなユーザーエージェントを生成することができます。