diff --git a/src/parsing/html_parser.py b/src/parsing/html_parser.py index 18828b47ce..0f6d3e58a9 100644 --- a/src/parsing/html_parser.py +++ b/src/parsing/html_parser.py @@ -110,7 +110,7 @@ async def _parse_item(self, soup: Union[PageElement, BeautifulSoup, Tag, Navigab columns = row.findAll(('td', 'th')) if len(rows) > 1 and len(columns) > 1: # allow single-row or single-column tables if env.TABLE_TO_IMAGE: - self.media.add(UploadedImage(convert_table_to_png(str(soup)))) + self.media.add(UploadedImage(convert_table_to_png(str(soup)), 'table.png')) return None for j, column in enumerate(columns): # transpose single-row tables into single-column tables row_content = await self._parse_item(column) diff --git a/src/parsing/medium.py b/src/parsing/medium.py index 49f5560f72..6e3746d697 100644 --- a/src/parsing/medium.py +++ b/src/parsing/medium.py @@ -634,9 +634,10 @@ class Animation(Image): class UploadedImage(AbstractMedium): type: str = IMAGE - def __init__(self, file: Union[bytes, BytesIO, Callable, Awaitable]): + def __init__(self, file: Union[bytes, BytesIO, Callable, Awaitable], file_name: str = None): super().__init__() self.file = file + self.file_name = file_name self.uploaded_file: Union[InputFile, InputFileBig, None] = None def telegramize(self) -> Optional[InputMediaUploadedPhoto]: @@ -705,7 +706,7 @@ async def validate(self, flush: bool = False, *_, **__) -> bool: raise ValueError(f'File must be bytes or BytesIO, got {type(self.file)}') if isinstance(self.file, BytesIO): self.file.seek(0) - self.uploaded_file = await env.bot.upload_file(self.file) + self.uploaded_file = await env.bot.upload_file(self.file, file_name=self.file_name) if isinstance(self.file, BytesIO): self.file.close() self.valid = True