Exemple #1
0
 def save_error_log(self):
     """
     Save last 60 screenshots in ./log/error/<timestamp>
     Save logs to ./log/error/<timestamp>/log.txt
     """
     from module.base.utils import save_image
     from module.handler.sensitive_info import (handle_sensitive_image,
                                                handle_sensitive_logs)
     if self.config.Error_SaveError:
         if not os.path.exists('./log/error'):
             os.mkdir('./log/error')
         folder = f'./log/error/{int(time.time() * 1000)}'
         logger.warning(f'Saving error: {folder}')
         os.mkdir(folder)
         for data in self.device.screenshot_deque:
             image_time = datetime.strftime(data['time'],
                                            '%Y-%m-%d_%H-%M-%S-%f')
             image = handle_sensitive_image(data['image'])
             save_image(image, f'{folder}/{image_time}.png')
         with open(logger.log_file, 'r', encoding='utf-8') as f:
             lines = f.readlines()
             start = 0
             for index, line in enumerate(lines):
                 line = line.strip(' \r\t\n')
                 if re.match('^═{15,}$', line):
                     start = index
             lines = lines[start - 2:]
             lines = handle_sensitive_logs(lines)
         with open(f'{folder}/log.txt', 'w', encoding='utf-8') as f:
             f.writelines(lines)
Exemple #2
0
    def _save(self, image, genre, filename):
        """
        Args:
            image: Image to save.
            genre (str): Name of sub folder.
            filename (str): 'xxx.png'

        Returns:
            bool: If success
        """
        try:
            folder = os.path.join(str(self.config.DropRecord_SaveFolder),
                                  genre)
            os.makedirs(folder, exist_ok=True)
            file = os.path.join(folder, filename)
            save_image(image, file)
            logger.info(f'Image save success, file: {file}')
            return True
        except Exception as e:
            logger.exception(e)

        return False
 def image_save(self, file):
     save_image(self.image, file)