import argparse import logging.config import traceback from time import sleep from sqlalchemy import update from db import MysqlSession from db.mysql import ZxPhhd from log import LOGGING_CONFIG from my_email.error_email import send_error_email from photo_review import auto_photo_review, SEND_ERROR_EMAIL # 照片审核自动识别脚本入口 if __name__ == '__main__': program_name = '照片审核自动识别脚本' logging.config.dictConfig(LOGGING_CONFIG) logging.info('等待接口服务启动...') sleep(60) parser = argparse.ArgumentParser() parser.add_argument('--clean', default=False, type=bool, help='是否将识别中的案子改为待识别状态') args = parser.parse_args() if args.clean: # 启动时清除仍在识别中的案子 session = MysqlSession() update_flag = (update(ZxPhhd).where(ZxPhhd.exsuccess_flag == '2').values(exsuccess_flag='1')) session.execute(update_flag) session.commit() session.close() logging.info('已释放残余的识别案子!') try: logging.info(f'【{program_name}】开始运行') auto_photo_review.main() except Exception as e: logging.getLogger('error').error(traceback.format_exc()) if SEND_ERROR_EMAIL: send_error_email(program_name, repr(e), traceback.format_exc())