epub converter: prettify consumer.py

This commit is contained in:
shirshasa
2021-09-03 16:19:46 +03:00
parent e6f8416516
commit 43cf40d795

View File

@@ -31,24 +31,11 @@ def configure_file_logger(name, filename='logs/converter_log.log', filemode='w+'
return logger return logger
def convert_book(book_id, access, logger, libra_locker): def convert_book(book_type: [Book, EpubBook], params: dict, logger, book_id):
logger.info(f'Start processing book-{book_id}.') logger.info(f'Start processing book-{book_id}.')
try: try:
book = Book(book_id, access, main_logger=logger, libra_locker=libra_locker) book = book_type(book_id=book_id, main_logger=logger, **params)
book.conversion()
except Exception as exc:
raise exc
logger.info(f'Book-{book_id} has been proceeded.')
print('Book has been proceeded.')
def convert_epub_book(book_id, access, logger=None):
logger.info(f'Start processing epub book-{book_id}.')
try:
book = EpubBook(book_id=book_id, access=access, main_logger=logger)
book.conversion() book.conversion()
except Exception as exc: except Exception as exc:
raise exc raise exc
@@ -63,22 +50,20 @@ def callback(ch, method, properties, body, logger, libra_locker):
try: try:
data = json.loads(body) data = json.loads(body)
assert 'apiURL' in data, 'No apiURL field in received message.' assert 'apiURL' in data, 'No apiURL field in received message.'
assert data.get('fileExtension') in ['epub', 'docx'], 'Wrong book type received.'
if data.get('fileExtension') == 'epub': book_params = {'access': Access(url=data['apiURL'])}
params = { if data.get('fileExtension') == 'docx':
'book_id': data['id'], book_params.update({'libra_locker': libra_locker})
'access': Access(url=data['apiURL']),
'logger': logger, params = {
} 'book_type': EpubBook if data.get('fileExtension') == 'epub' else Book,
thread = Thread(target=convert_epub_book, kwargs=params) 'book_id': data['id'],
else: 'logger': logger,
params = { 'params': book_params
'book_id': data['id'], }
'access': Access(url=data['apiURL']),
'logger': logger, thread = Thread(target=convert_book, kwargs=params)
'libra_locker': libra_locker
}
thread = Thread(target=convert_book, kwargs=params)
thread.start() thread.start()
logging.log(logging.INFO, f'Active threads: {active_count()}.') logging.log(logging.INFO, f'Active threads: {active_count()}.')
# print(f'Active threads: {active_count()}.') # print(f'Active threads: {active_count()}.')