From 5eec71b4a1ea85cbb446fe8289f5117071d9465e Mon Sep 17 00:00:00 2001 From: admin Date: Tue, 7 Apr 2026 09:28:11 +1000 Subject: [PATCH] =?UTF-8?q?=D0=B7=D0=B0=D0=BC=D0=B5=D0=BD=D0=B0=20=D0=BD?= =?UTF-8?q?=D0=B0=20zip?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index 1a0aaf3..6b378b1 100644 --- a/main.py +++ b/main.py @@ -8,7 +8,8 @@ from datetime import datetime as dt from datetime import datetime, timedelta import random -from rarfile import RarFile +import zipfile +# from rarfile import RarFile import tempfile # Сторонние библиотеки (third-party) @@ -501,24 +502,24 @@ async def download_all(dates: DownloadRange): return {"error": "Файлы не найдены за указанный период", "date_start": date_start, "date_finish": date_finish} # Создаём архив во временной директории - archive_name = f"documents.rar" + archive_name = f"documents.zip" archive_path = os.path.join(tempfile.gettempdir(), archive_name) try: - with RarFile(archive_path, 'w') as rar: + with zipfile.ZipFile(archive_path, 'w', zipfile.ZIP_DEFLATED) as zipf: for file_path in all_files: - rar.write(file_path, os.path.basename(file_path)) + zipf.write(file_path, os.path.basename(file_path)) except Exception as e: logger.error(f"Ошибка создания архива: {e}") return {"error": f"Ошибка создания архива: {e}"} - + logger.info(f"Архив создан: {archive_path}") # Возвращаем архив response = FileResponse( path=archive_path, filename=archive_name, - media_type="application/x-rar-compressed" + media_type="application/zip" ) response.headers["Access-Control-Allow-Origin"] = "*" response.headers["Access-Control-Allow-Methods"] = "GET, OPTIONS"