run in executor

This commit is contained in:
Dmitry Afanasyev 2022-08-14 02:40:39 +03:00
parent be00798312
commit c5ed964486
2 changed files with 4 additions and 2 deletions

View File

@ -17,7 +17,6 @@ download_gecko_driver()
driver = configure_firefox_driver() driver = configure_firefox_driver()
executor = ThreadPoolExecutor(5) executor = ThreadPoolExecutor(5)
loop = asyncio.get_running_loop()
stations_cb = CallbackData('station', 'direction') stations_cb = CallbackData('station', 'direction')
@ -50,6 +49,7 @@ async def home_office(
) )
message = 'Остановка Б. Академическая ул, д. 15' message = 'Остановка Б. Академическая ул, д. 15'
loop = asyncio.get_running_loop()
text = await loop.run_in_executor(executor, parse_site, driver, url, message) text = await loop.run_in_executor(executor, parse_site, driver, url, message)
# text = parse_site( # text = parse_site(

View File

@ -1,3 +1,4 @@
import asyncio
import os import os
import tarfile import tarfile
import time import time
@ -44,7 +45,7 @@ def configure_firefox_driver(private_window: bool = False) -> WebDriver:
return firefox_driver return firefox_driver
def parse_site(driver: WebDriver, url: str, message: str) -> str: async def parse_site(driver: WebDriver, url: str, message: str) -> str:
driver.get(url) driver.get(url)
time.sleep(4) time.sleep(4)
elements = driver.find_elements( elements = driver.find_elements(
@ -80,4 +81,5 @@ def parse_site(driver: WebDriver, url: str, message: str) -> str:
answer += f'Автобус {bus_300.text} - {bus_300_arrival.text}\n' answer += f'Автобус {bus_300.text} - {bus_300_arrival.text}\n'
if bus_t19 and bus_t19_arrival: if bus_t19 and bus_t19_arrival:
answer += f'Автобус {bus_t19.text} - {bus_t19_arrival.text}' answer += f'Автобус {bus_t19.text} - {bus_t19_arrival.text}'
await asyncio.sleep(30)
return answer return answer