Есть ли ограничение размера для блоба для Utilities.unzip(блоб) в скрипте Google Apps?
У меня есть скрипт Google, который обращается к веб-сайту, находит файл.zip, распаковывает его и извлекает соответствующие данные из соответствующих файлов.
Я хочу сделать то же самое, но для другого, большего размера файла.zip на том же сайте.
Я получил доступ к.zip (используя почти идентичный код), но он выдает ошибку: "Не удалось распаковать".
Мой код:
var dir = UrlFetchApp.fetch(url);
var b = dir.getBlob();
var files = Utilities.unzip(b);
Единственная разница между этими двумя файлами:
- Файл A заканчивается на "Update%201.8.5.zip" и содержит 9 файлов (5,46 МБ, 5,15 МБ в сжатом виде)
- Файл B заканчивается "260_185.zip" и содержит 407 файлов (384 МБ, 280 МБ в сжатом виде)
Это заставляет меня думать, что существует ограничение (размер или количество файлов) на метод Utilities.unzip(). Кто-нибудь может это подтвердить, или есть что-то с форматом имен файлов, что все портит?
2 ответа
Квоты для Сервисов Google включают ограничение
Полученные данные для получения URL: 100 МБ / день
так что, похоже, ваш URL-запрос не может создать действительный zip-файл.
Помимо ограничений URL Fetch, Utilities.unzip(blob) имеет свои собственные нераскрытые ограничения.
Я просто попытался распаковать файл размером>200 МБ, полученный с помощью DriveApp.getFileById(id), и он вернулся
Архив контрацептивных документов. Бюджетный архив. Таможенный архив. Максимальное разрешение.
(Перевод с помощью Google Translate)
Файл contratacionesabiertas_bulk.csv.zip превышает максимально допустимый размер файла.