asks aims to have a mostly familiar API, using simple functions/methods like
get() for getting,
post() for posting. At the heart of asks is a session class which makes interacting with the web in a sustained and fluid way fast, efficient, and simple. Check out the examples!
Check the docs!
Above you'll find detailed docs with a large number of simple examples to help you get off the ground in no time.
Requires: Python 3.5.2 or newer.
pip install asks
Note: Currently supports trio's development branch. You can install this by doing
pip install git+https://github.com/python-trio/trio.git
# one request # A little silly to async one request, but not without its use! import asks import curio asks.init('curio') async def example(): r = await asks.get('https://example.org') print(r.content) curio.run(example())
# many requests # make 1k api calls and store their response objects # in a list. import asks import trio asks.init(trio) path_list = ['http://fakeurl.org/get','http://example123.org'] results =  async def grabber(s, path): r = await s.get(path) results.append(r) async def main(path_list): from asks.sessions import Session s = Session('https://example.org', connections=2) async with trio.open_nursery() as n: for path in path_list: n.start_soon(grabber, s, path) trio.run(main, path_list)
2.0.0 - Setting
stream=True means that the response returned will be a
StreamResponse object rather than the default