import pytest from requests_html import HTMLSession, AsyncHTMLSession, HTMLResponse session = HTMLSession() def test_pagination(): pages = ( 'https://xkcd.com/1957/', 'https://smile.amazon.com/', 'https://theverge.com/archives' ) for page in pages: r = session.get(page) assert next(r.html) @pytest.mark.asyncio async def test_async_pagination(event_loop): asession = AsyncHTMLSession() pages = ( 'https://xkcd.com/1957/', 'https://smile.amazon.com/', 'https://theverge.com/archives' ) for page in pages: r = await asession.get(page) assert await r.html.__anext__() def test_async_run(): asession = AsyncHTMLSession() async def test1(): return await asession.get('https://xkcd.com/1957/') async def test2(): return await asession.get('https://reddit.com/') async def test3(): return await asession.get('https://smile.amazon.com/') r = asession.run(test1, test2, test3) assert len(r) == 3 assert isinstance(r[0], HTMLResponse)