1. Telegram чат для обсуждения работы JS парсеров и Node.js модулей: https://t.me/a_parser_javascript
  2. Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 2600+ и мы растем!
    Скрыть объявление

Проблема с save_to_file

Тема в разделе "Техническая поддержка по JavaScript парсерам", создана пользователем Dmitron, 19 май 2025 в 13:55.

  1. Dmitron

    Dmitron A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    28 май 2017
    Сообщения:
    153
    Симпатии:
    7
    Добрый день.

    Дорабатываю JS парсер, столкнулся с проблемой сохранения файлов. Использую save_to_file по вашей документации.

    Все файлы, кроме txt, js сохраняются стабильно, но вот текстовые файлы сохраняются как иероглифы.

    Подскажите пожалуйста, что не так я делаю при сохранении файлов?

    Код:
    const {success} = await this.request('GET', downloadUrl, {}, {
       save_to_file: ${dirPath}/${itemName}
    });
     
  2. Support

    Support Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    16 мар 2012
    Сообщения:
    4.711
    Симпатии:
    2.209
    Может просто не в той кодировке открываете? Пришлите пример файла, который был создан парсером (лучше архивом, можно в личку или чат Технической поддержки).
     
  3. Dmitron

    Dmitron A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    28 май 2017
    Сообщения:
    153
    Симпатии:
    7
    Отправил в чат поддержки прямую ссылку с OneDrive на скачивание txt файла, сможете сами попробовать.
     
  4. Support

    Support Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    16 мар 2012
    Сообщения:
    4.711
    Симпатии:
    2.209
    При save_to_file поток сохраняется как есть. Соответственно если сервер по-умолчанию отдает содержимое, заархивированное например с помощью gzip, то и в файл сохранится именно заархивированное содержимое.
    В качестве решения можно в запросе передавать заголовок Accept-Encoding: deflate, тем самым указывая серверу отдавать несжатые данные.
     

Поделиться этой страницей