Открывается почтовый клиент с шаблоном письма…

Архивируйте веб-страницы письмом — получите страницу обратно в виде самодостаточного HTML

Отправьте email с адресом страницы — сервис откроет её, встроит все стили, изображения и шрифты и пришлёт готовый файл ответным письмом.

web2mail.secstant.ru

Запросы отправляйте на: web2mail@secstant.ru

Письмо-запрос

URL страницы

Сервис

Открывает и сохраняет

Письмо-ответ

HTML-файл во вложении

Как это работает

Полный цикл взаимодействия — всё через почту, три простых шага.

1

Отправьте письмо-запрос

Отправьте письмо на web2mail@secstant.ru. Тема должна начинаться с [Web2Mail-Request]. В теле или во вложении укажите URL страницы.

2

Сервис открывает и сохраняет страницу

Настоящий браузер (в фоновом режиме) загружает страницу со всеми ресурсами — стилями, изображениями, шрифтами — и делает её полный снимок.

3

Получите ответ письмом

Ответ приходит как Re: на исходное письмо. Во вложении — готовый HTML-файл: всё встроено внутрь, открывается в любом браузере, ничего не нужно скачивать отдельно.

Реактивный режим — сервис отвечает сразу после получения письма, без периодических опросов и задержек.

Как открыть MHTML на телефоне

Если в ответ пришёл файл MHTML, стандартный браузер на телефоне его не откроет. Установите специализированное приложение:

Возможности

Ключевые сценарии и преимущества сервиса.

Самодостаточный архив

HTML со всеми ресурсами (CSS, изображения, шрифты) в одном файле. Открывается offline, без внешних запросов.

Расширенные параметры (экспериментально)

Для нестандартных запросов (например, отправка формы) можно указать дополнительные параметры. Функционал экспериментальный, корректная работа не гарантируется.

Реактивность без ожидания

Сервис отвечает сразу после получения письма — без задержек и ожидания.

Точный снимок страницы

Страница открывается в настоящем браузере — со всеми скриптами, шрифтами и сложной вёрсткой, как вы её видите.

Гибкие форматы запроса

URL можно указать ссылкой в теле письма, JSON-объектом или файлом-вложением.

Надёжный фолбэк

Если конвертация в HTML не удалась — вы получите исходный MHTML-архив.

Как отправить запрос страницы

Письмо отправляйте на web2mail@secstant.ru. Адрес страницы можно передать тремя способами — выберите любой. Сервис поймёт все варианты.

Быстрый старт

Отправьте запрос на web2mail@secstant.ru — кнопка откроет почтовый клиент с готовым шаблоном, останется заменить URL

Создать письмо

Тема письма

Тема обязательно начинается с маркера [Web2Mail-Request] (без учёта регистра). После маркера можно (необязательно) указать requestId и нейтральную фразу.

[Web2Mail-Request] {опционально requestId} {опционально нейтральная фраза}
Тема Обрабатывается requestId
[Web2Mail-Request] Page download request ✅ Да
[Web2Mail-Request] a1b2c3 Please download page ✅ Да a1b2c3
[Web2Mail-Request] Скачать страницу ✅ Да
[web2mail-request] 550e8400 любой текст ✅ Да 550e8400
Re: [Web2Mail-Request] ... ❌ Нет
Страница для загрузки ❌ Нет

Письма, тема которых не начинается с [Web2Mail-Request], игнорируются.

Три способа указать URL

Способ A

URL в теле письма

Самый простой способ. Вставьте ссылку в любой части текста.

Привет!
Скачай, пожалуйста, эту страницу:
https://example.com/page
Спасибо!
Способ B

JSON в теле письма

Удобно, если нужны дополнительные параметры. JSON можно разместить в любом месте текста.

Привет!
Пожалуйста, скачай эту страницу:
{"url": "https://example.com/page"}
Спасибо!
Способ C

Вложение request.json

Самый мощный способ. Прикрепите файл request.json. Вложение имеет приоритет над текстом.

{"url": "https://example.com"}

requestId (необязательно)

requestId — необязательный идентификатор запроса. Нужен только для удобства: чтобы связать ваш исходный запрос и пришедший ответ.

Может быть UUID, произвольной строкой или числом.

Указывается по желанию в одном из двух мест:

  • в теме письма (первое слово после маркера [Web2Mail-Request]);
  • в JSON (в теле письма или во вложении).

Если requestId указан и в теме, и в JSON — приоритет у JSON.

Приоритеты обработки

Источник страницы (URL)

Вложение request.json JSON в теле URL в тексте

requestId

JSON (вложение/тело) Тема письма

Расширенные параметры (только через JSON)

Простыми словами: этот раздел — для опытных пользователей. Если вы просто хотите сохранить страницу, достаточно указать её адрес (URL) — остальные поля не нужны. Расширенные параметры нужны только для нестандартных сценариев, например отправки формы.

Для нестандартных запросов (POST-форма, произвольный Content-Type и т.п.) можно использовать полный JSON (в теле или во вложении). Все поля, кроме url, необязательны.

Экспериментальная функция. Передача параметров formData, rawBody, contentType, cookies и headersэкспериментальная возможность. Корректная их обработка и работа результирующего архива не гарантируются. Используйте их на свой страх и риск.
Страницы с авторизацией не гарантируются. Работа со страницами, требующими авторизации или сессионных данных (личные кабинеты, закрытые разделы сайтов), корректно работать, скорее всего, не будет — их работа не гарантируется.
Поле Тип Обяз. Описание
url string Да URL целевой страницы
requestId string Идентификатор запроса (для удобства сопоставления)
method string HTTP-метод (GET, POST, …). По умолчанию GET
formData Record ⚠️ Экспериментально. Поля формы для application/x-www-form-urlencoded
rawBody string ⚠️ Экспериментально. Сырое тело запроса (base64 для бинарного, UTF-8 для текста)
contentType string ⚠️ Экспериментально. Content-Type исходного запроса
headers Record ⚠️ Экспериментально. Заголовки запроса (ключи в lowercase)
cookies SerializedCookie[] ⚠️ Экспериментально. Cookies для подстановки на бэкенде (включая HttpOnly)
viewport {width, height} Размеры окна браузера в пикселях (CSS px). По умолчанию 1920×1080
formData и rawBody взаимоисключающи: для форм — formData, для прочих тел — rawBody. Загрузка файлов (multipart/form-data) не поддерживается.

Поля cookies

ПолеТипОписание
namestringИмя cookie
valuestringЗначение
domainstringДомен (. для wildcard: .example.com)
pathstringПуть (обычно /)
securebooleanТолько HTTPS
httpOnlybooleanНедоступен из JS
sameSitestringunspecified / no_restriction / lax / strict
expirationDatenumber?Окончание действия (Unix, секунды)

Примеры запросов

1 Минимальный GET (только URL)

"url": "https://example.com/page"

2 POST-форма на странице (экспериментально)

Параметры formData, contentType, headersэкспериментальные. Корректная работа не гарантируется.
{
  "url": "https://example.com/search",
  "method": "POST",
  "formData": {
    "query": ["архив"],
    "page": ["1"]
  },
  "contentType": "application/x-www-form-urlencoded",
  "headers": {
    "accept": "text/html,application/xhtml+xml,*/*;q=0.8",
    "accept-language": "ru-RU,ru;q=0.9"
  }
}

3 POST с raw-телом в API (экспериментально)

Параметры rawBody, contentType, headersэкспериментальные. Корректная работа не гарантируется.
{
  "url": "https://api.example.com/public-data",
  "method": "POST",
  "rawBody": "eyJxdWVyeSI6ICJzb21ldGhpbmcifQ==",
  "contentType": "application/json",
  "headers": {
    "content-type": "application/json",
    "accept": "application/json"
  }
}

4 Размер окна браузера (viewport)

{
  "url": "https://example.com",
  "viewport": {"width": 1366, "height": 768}
}

Поле viewport опционально. Если не указано — страница рендерится при 1920×1080. Полезно для сохранения мобильных/десктопных версий сайтов с адаптивной вёрсткой (например, {width: 390, height: 844} для мобильного вида).

Что вы получите в ответ

Ответ как Re: на исходное письмо

Тема сохраняется, что позволяет связать запрос и ответ по requestId (если он был указан).

Самодостаточный HTML-файл

Все ресурсы (CSS, изображения, шрифты) встроены как data: URI в base64. Один файл, без внешних запросов.

MHTML-фолбэк

Если конвертация в HTML невозможна — вы получите исходный MHTML-архив.

На телефоне файлы MHTML не открываются стандартными браузерами. Как открыть MHTML на Android и iPhone — см. раздел выше.

Безопасность и приватность

Сервис получает только общедоступные страницы. Работа со страницами, требующими авторизации или сессионных данных (личные кабинеты, закрытые разделы), не гарантируется.

Сервис обрабатывает только письма с маркером [Web2Mail-Request]; прочие письма игнорируются.

Частые вопросы

Любые общедоступные страницы, которые открываются в браузере без входа. Работа со страницами, требующими авторизации или сессионных данных (личные кабинеты, закрытые разделы сайтов), корректно работать, скорее всего, не будет — их работа не гарантируется. Загрузка файлов (например, фотографий и документов) через форму не поддерживается.
Нет. Сервис даёт возможность только получить общедоступную страницу файлом (снимок страницы). Двусторонняя передача данных не поддерживается — отправка данных на сайты (заполнение и отправка форм, авторизация, бронирование и т.п.) работать корректно не будет.
Нет. Через сервис не работают никакие мессенджеры (Telegram, WhatsApp и др.) и сторонние приложения — сервис предназначен исключительно для сохранения общедоступных веб-страниц.
Проверьте URL и доступность страницы. Сервис делает несколько попыток; при превышении таймаута сохраняется частичная страница. Учтите, что закрытые страницы и страницы с авторизацией могут не работать.
Самодостаточный HTML-файл (ресурсы встроены как base64) либо MHTML-фолбэк при ошибке конвертации. Ответ приходит как Re: на исходное письмо.
Нет. requestId нужен только для вашего удобства, чтобы сопоставить запрос и ответ. Можно не указывать.
Сервис приступает к обработке сразу после получения письма — без задержек и ожидания. Время ответа зависит от сложности и размера страницы: обычно от нескольких секунд до пары минут.

Готовы архивировать страницу?

Отправьте письмо с темой [Web2Mail-Request] и адресом страницы — ответ придёт письмом.

Запросы отправляйте на: web2mail@secstant.ru