慕碼人8056858
2021-09-11 10:29:57
有沒有辦法讓每個(gè) URL 都有自己的會(huì)話?我閱讀了 Github 上的 aiohttp 文檔,但我找不到這是否可行。我知道可以使用請求,但不確定如何使用 aiohttp。感謝任何幫助,因?yàn)槲覠o法找到答案。sites = ['http://example.com/api/1', 'http://example.com/api/2']async def fetch(session, site): print('Fetching: ' + site) async with session.get(site) as response: return await response.text()async def main(): t = [] async with aiohttp.ClientSession() as session: for site in sites: task = asyncio.create_task(fetch(session, site)) t.append(task) await asyncio.gather(*t)
1 回答

天涯盡頭無女友
TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超9個(gè)贊
有沒有辦法讓每個(gè) URL 都有自己的會(huì)話?
是的,只需fetch將會(huì)話創(chuàng)建移動(dòng)到協(xié)程中:
async def fetch(site):
print('Fetching: ' + site)
async with aiohttp.ClientSession() as session, \
session.get(site) as response:
return await response.text()
async def main():
t = []
for site in sites:
task = asyncio.create_task(fetch(site))
t.append(task)
await asyncio.gather(*t)
添加回答
舉報(bào)
0/150
提交
取消