main.py
This commit is contained in:
parent
980eea316b
commit
3cc6a3a39a
33
main.py
Normal file
33
main.py
Normal file
|
@ -0,0 +1,33 @@
|
|||
import logging
|
||||
|
||||
import asyncio
|
||||
|
||||
from environs import load_dotenv
|
||||
|
||||
from extractor import ApiExtractor
|
||||
from loader import EtlLoader
|
||||
from settings import ApiConfig
|
||||
from state import JsonFileStorage, State
|
||||
|
||||
load_dotenv()
|
||||
|
||||
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(funcName)s - %(message)s')
|
||||
|
||||
|
||||
async def main():
|
||||
extractor = ApiExtractor()
|
||||
storage = JsonFileStorage()
|
||||
api = ApiConfig()
|
||||
state = State(storage=storage)
|
||||
loader = EtlLoader()
|
||||
logging.info('Обработчик готов к работе.')
|
||||
while True:
|
||||
for iblock_id in api.iblocks:
|
||||
abitrs = await extractor.get_extract_data(iblock_id=int(iblock_id), state=state)
|
||||
for abitr in abitrs:
|
||||
await loader.load_data(state=state, abitr=abitr, storage=storage, iblock_id=int(iblock_id))
|
||||
asyncio.sleep(10)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
asyncio.run(main())
|
Loading…
Reference in New Issue
Block a user