import asyncio import aiohttp import urllib.parse class SymbologyObject(object): def __init__(self, _url, **kwargs): self.params = {'format': kwargs.get('format', 'json'), 'pretty': kwargs.get('pretty', '')} self.encodedParams = urllib.parse.urlencode(self.params) self._url = 'https://api.scryfall.com/' + _url + "&" + self.encodedParams #Find a fix for this later async def getRequest(client, url, **kwargs): async with client.get(url, **kwargs) as response: return await response.json() async def main(loop): async with aiohttp.ClientSession(loop=loop) as client: self.scryfallJson = await getRequest(client, self._url) loop = asyncio.get_event_loop() loop.run_until_complete(main(loop)) if self.scryfallJson['object'] == 'error': raise Exception(self.scryfallJson['details'])