Python编程异步爬虫实战案例
import asyncio
import aiohttp
async def fetch(session, url):
async with session.get(url) as response:
return await response.text()
async def main():
async with aiohttp.ClientSession() as session:
html = await fetch(session, 'http://httpbin.org/headers')
print(html)
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
这段代码使用了aiohttp
库来发送异步的HTTP请求,以提高网络爬虫的效率。fetch
函数是一个异步函数,使用session.get
来发送HTTP GET请求,并通过await response.text()
获取响应内容。main
函数中创建了一个ClientSession
对象,并调用fetch
函数来获取网页内容。最后,使用异步事件循环asyncio
运行main
函数。
评论已关闭