Hi All, I figured that I would try this group out first before submitting a bug in the github repository.
Here is my original problem: https://stackoverflow.com/questions/50243393/runtimeerror-this-event-loop-is-already-running-debugging-aiohttp-asyncio-a Below is a copy and paste of that description of the problem: ________________________________________________________________________________________________________________________________________ I'm struggling to understand why I am getting the "RuntimeError: This event loop is already running" runtime error. I have tried to run snippets of code from "https://aiohttp.readthedocs.io/en/stable/" however, I keep getting the same issue. *Code snippet from Tutorial:* ------------------------------ import aiohttpimport asyncioimport async_timeout async def fetch(session, url): async with async_timeout.timeout(10): 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://python.org') print(html) loop = asyncio.get_event_loop() loop.run_until_complete(main()) ------------------------------ *RESULTS from tutorial snippet (while running code from spyder IDE):* ------------------------------ RuntimeError: This event loop is already running <!doctype html>" ... (more html) ------------------------------ *Personal code snippet (not from the tutorial referenced above):* ------------------------------ import aiohttpimport asyncioimport time urls = ['https://api.robinhood.com/quotes/c4f6720a-0364-4e7b-8c41-705696759e1a/'] async def fetch(client, url): async with client.request('get', url) as response: if response.status == 200: data = await response.text() else: data = [] print(data) return(data) async def get_async_urls(urls): async with aiohttp.ClientSession() as client: return await asyncio.gather(*(fetch(client, url) for url in urls)) if __name__ == '__main__': t0 = time.time() loop = asyncio.get_event_loop() results = loop.run_until_complete(get_async_urls(urls)) print(results) t1 = time.time() total_time = t1-t0 loop.close() ------------------------------ *RESULTS from personal snippet (while running code from spyder IDE):* ------------------------------ RuntimeError: This event loop is already running {"ask_price":"14.9000","ask_size":100,"bid_price":"14.0100","bid_size":100,"last_trade_price":"14.7900","last_extended_hours_trade_price":"14.7900","previous_close":"14.3600","adjusted_previous_close":"14.3600","previous_close_date":"2018-05-07","symbol":"SURF","trading_halted":false,"has_traded":true,"last_trade_price_source":"consolidated","updated_at":"2018-05-08T20:01:21Z","instrument":" https://api.robinhood.com/instruments/43d56335-f2f6-4711-b650-55be2396f814/ "} ------------------------------ *RESULTS from personal snippet (while running from cmd "python personal_snippet.py") [EXPECTED RESULT]:* ------------------------------ {"ask_price":"14.9000","ask_size":100,"bid_price":"14.0100","bid_size":100,"last_trade_price":"14.7900","last_extended_hours_trade_price":"14.7900","previous_close":"14.3600","adjusted_previous_close":"14.3600","previous_close_date":"2018-05-07","symbol":"SURF","trading_halted":false,"has_traded":true,"last_trade_price_source":"consolidated","updated_at":"2018-05-08T20:01:21Z","instrument":" https://api.robinhood.com/instruments/43d56335-f2f6-4711-b650-55be2396f814/"} ['{"ask_price":"14.9000","ask_size":100,"bid_price":"14.0100","bid_size":100,"last_trade_price":"14.7900","last_extended_hours_trade_price":"14.7900","previous_close":"14.3600","adjusted_previous_close":"14.3600","previous_close_date":"2018-05-07","symbol":"SURF","trading_halted":false,"has_traded":true,"last_trade_price_source":"consolidated","updated_at":"2018-05-08T20:01:21Z","instrument":" https://api.robinhood.com/instruments/43d56335-f2f6-4711-b650-55be2396f814/ "}'] ------------------------------ *The above results appear to point to the issue being related to the Spyder IDE.* ------------------------------ *I have two questions:* 1. *Why am I getting this error?* It seems like other people do not get this error when running the tutorial code. (Potentially answered: POSSIBLE BUG IN SPYDER3) *This seems to only happen in the spyder IDE. I ran both snippets of code in from the cmd prompt and no error appeared. Thanks to @MikhailGerasimov for the suggestion.* 2. Given that I have two print commands (in the second snippet of code) and that only one set of "data" was printed, then *why is data not getting back to the original call (results = loop.run_until_complete(get_async_urls(urls)))* (Potentially answered: POSSIBLE BUG IN SPYDER3) *This seems to only happen in the spyder IDE. I ran the second snippet of code in from the cmd prompt and both prints appeared. Thanks to @MikhailGerasimov for the suggestion.* ------------------------------ ------------------------------ ------------------------------ -- You received this message because you are subscribed to the Google Groups "spyder" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/spyderlib. For more options, visit https://groups.google.com/d/optout.
