guibacellar / TEx

Telegram Monitor
Apache License 2.0
316 stars 43 forks source link

Client crash when download big files #81

Open eladeyni opened 1 month ago

eladeyni commented 1 month ago

After download 4-10 files the client crash: Ubuntu Python 3.10.14

Traceback (most recent call last): File "/usr/local/lib/python3.10/runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "/usr/local/lib/python3.10/runpy.py", line 86, in _run_code exec(code, run_globals) File "/usr/local/lib/python3.10/site-packages/TEx/main.py", line 22, in sys.exit(TelegramMonitorRunner().main()) File "/usr/local/lib/python3.10/site-packages/TEx/runner.py", line 72, in main self.execute_sequence(args, data, self.config['PIPELINE']['pipeline_sequence'].split('\n'), 'Pipeline') File "/usr/local/lib/python3.10/site-packages/TEx/runner.py", line 102, in execute_sequence loop.run_until_complete( File "/usr/local/lib/python3.10/asyncio/base_events.py", line 641, in run_until_complete return future.result() File "/usr/local/lib/python3.10/site-packages/TEx/runner.py", line 124, in execute_pipeline_item await module_instance.run( File "/usr/local/lib/python3.10/site-packages/TEx/modules/telegram_messages_scrapper.py", line 64, in run await self.__download_messages( File "/usr/local/lib/python3.10/site-packages/TEx/modules/telegram_messages_scrapper.py", line 122, in download_messages downloaded_media: Optional[MediaHandlingEntity] = await self.media_handler.handle_medias(message, group_id, data_path) if download_media else None File "/usr/local/lib/python3.10/site-packages/TEx/core/media_handler.py", line 157, in handle_medias await executor_spec['downloader']( File "/usr/local/lib/python3.10/site-packages/TEx/core/media_download_handling/std_media_downloader.py", line 26, in download generated_path: str = await message.download_media(target_path) File "/usr/local/lib/python3.10/site-packages/telethon/tl/custom/message.py", line 847, in download_media return await self._client.download_media(self, *args, **kwargs) File "/usr/local/lib/python3.10/site-packages/telethon/client/downloads.py", line 422, in download_media return await self._download_document( File "/usr/local/lib/python3.10/site-packages/telethon/client/downloads.py", line 895, in _download_document result = await self._download_file( File "/usr/local/lib/python3.10/site-packages/telethon/client/downloads.py", line 545, in _download_file async for chunk in self._iter_download( File "/usr/local/lib/python3.10/site-packages/telethon/requestiter.py", line 74, in anext if await self._load_next_chunk(): File "/usr/local/lib/python3.10/site-packages/telethon/client/downloads.py", line 66, in _load_next_chunk cur = await self._request() File "/usr/local/lib/python3.10/site-packages/telethon/client/downloads.py", line 76, in _request result = await self.client._call(self._sender, self.request) File "/usr/local/lib/python3.10/site-packages/telethon/client/users.py", line 87, in _call result = await future telethon.errors.rpcerrorlist.FileReferenceExpiredError: The file reference has expired and is no longer valid or it belongs to self-destructing media and cannot be resent (caused by GetFileRequest) Segmentation fault