Как получить user-agent с client session в python
Имею код:
import asyncio
from aiohttp import ClientSession
headers = {
'User-Agent': 'example',
}
async def send_request(headers):
async with ClientSession() as session:
async with session.get('https://example.com', headers = headers) as response:
html_code = await response.text()
print(response.headers)
if __name__ == "__main__":
asyncio.run(send_request(headers))
И после отправки запроса, получаю:
<CIMultiDictProxy('Server': 'nginx-reuseport/1.13.4',
'Date': 'Thu, 04 Mar 2021 17:35:15 GMT',
'Content-Type': 'text/html; charset=UTF-8',
'Content-Length': '31847',
'Connection': 'keep-alive',
'Keep-Alive': 'timeout=30',
'X-Powered-By': 'PHP/7.3.20',
'Vary': 'Accept-Encoding',
'Content-Encoding': 'gzip',
'Cache-Control': 'max-age=0',
'Expires': 'Thu, 04 Mar 2021 17:35:15 GMT')>
Я хотел бы получить user agent который отправил на сервер от сервера. Это возможно?
Ответы (1 шт):
Автор решения: vladrunk
→ Ссылка
import asyncio
from aiohttp import ClientSession
headers = {
'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) FxQuantum/86.0 AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.0.0 Mobile Safari/537.36',
}
async def send_request(headers):
async with ClientSession(headers = headers) as s:
async with s.get('http://httpbin.org/headers', ) as r:
print(s.headers)
# далее твой код обработки ответа
if __name__ == "__main__":
asyncio.run(send_request(headers))