diff --git a/docker/archive/main.py b/docker/archive/main.py index 6da6a2bc..ffef9d87 100644 --- a/docker/archive/main.py +++ b/docker/archive/main.py @@ -8,6 +8,7 @@ import gzip import json import logging import os.path +import pathlib import subprocess import tempfile @@ -84,16 +85,15 @@ async def take_screenshot(url: str) -> bytes: logger.error(f'Failed to screenshot {url}', exc_info=True) return b'' - try: - path = f'{tmp_dir}/screenshot.png' - size = os.path.getsize(path) - logger.info(f'Successful screenshot ({size} bytes) at {path}') - with open(path, 'rb') as fh: - png = fh.read() - return png - except FileNotFoundError: + path = pathlib.Path(f'{tmp_dir}/screenshot.png') + if not path.is_file(): return b'' + size = os.path.getsize(path) + logger.info(f'Successful screenshot ({size} bytes) at {path}') + png = path.read_bytes() + return png + def prepare_bytes(b: bytes) -> str: """