Boomly

Конвертер форматов выдачи: как им пользоваться

Каталог отдаёт выдачу в нескольких несовместимых формах — и один инструмент приводит их к общему виду прямо в браузере.

Почему единого формата нет

Каталог собирается из партий разных поставщиков, и каждая приходит в том виде, в каком её отдаёт источник. Приводить всё к одному формату магазин не берётся: это означало бы переписывать данные, а значит, вносить в них ошибки. Вместо этого формат честно указан в названии каждой позиции после слова «Формат».

Набор форм на витрине не постоянный — он меняется вместе со стоком, поэтому запоминать их количество бессмысленно. Смотреть нужно метку конкретной позиции. Сейчас в каталоге встречаются такие формы.

ФормаЧто это
Login:Pass|Cookieлогин и пароль, cookie после вертикальной черты
Login:Pass:2FA_code|Cookieто же плюс ключ двухфакторной аутентификации
IAMпрофиль для InstAccountsManager
IAM (без Cookie)профиль без cookie — вход по логину и паролю
IGAM | IAM onlyпрофиль, открывающийся только в InstAccountsManager
строкаодно значение на запись — так поставляются User-Agent; встречается вариант «строка | IAM only»

Формы делятся на две несовместимые группы. Текстовые — Login:Pass|Cookie, Login:Pass:2FA_code|Cookie и «строка» — открываются блокнотом и заливаются куда угодно. Профили IAM, IAM (без Cookie) и IGAM разбирать нечего: поля лежат внутри файла, который открывает конкретный софт.

Конвертер работает только с текстовыми формами, и это не ограничение инструмента, а свойство данных. Если в названии стоит профиль, привести его к виду вашей программы нечем — совместимость решается до оплаты, выбором позиции.

Метка формата стоит в названии рядом с остальными: происхождением, возрастом, состоянием и комплектом. Читают её обычно последней, а выбирать позицию стоит именно с неё — несовместимый формат обесценивает всё остальное, включая отлёжку и почту в комплекте.

Главная ошибка разбора: двоеточие

Строка вида Login:Pass:2FA_code|Cookie выглядит так, будто её достаточно разделить по двоеточию. На практике это ломает данные почти всегда: cookie идёт после вертикальной черты и сам содержит двоеточия внутри значений. Разделив всю строку по двоеточию, вы получите не шесть полей, а два десятка обрывков.

Правильный порядок действий обратный: сначала отрезать хвост после первой вертикальной черты — это cookie целиком, — и только потом разбирать оставшуюся голову по двоеточию. Конвертер на сайте устроен именно так, поэтому на живых позициях он не ломается.

  • Хвост после «|» — cookie, его не трогаем и не режем.
  • Голова до «|» — логин, пароль и дальше по обстоятельствам: почта, пароль почты, ключ 2FA.
  • Порядок полей в голове у разных партий отличается, поэтому конвертер не угадывает его по шаблону, а определяет по признакам.

Проверить это можно на одной записи. Возьмите любую строку из выдачи, отрежьте хвост после первой вертикальной черты и посчитайте, что осталось в голове: значений должно быть ровно столько, сколько обещала карточка позиции. Больше — значит режете не там.

Как конвертер узнаёт поля

Вместо одного «правильного» шаблона используется разбор по признакам. Значение со знаком @ считается почтой; следующее за ним — паролем почты. Длинная последовательность заглавных букв и цифр опознаётся как ключ двухфакторной аутентификации: секрет 2FA всегда записывается именно так. Остальное распределяется по позициям.

Всего инструмент различает шесть полей, и этого хватает на любую текстовую форму каталога.

  • Логин и пароль — первые значения в голове строки.
  • Почта — значение со знаком @, пароль почты — то, что стоит следом за ней.
  • Ключ 2FA — длинная последовательность заглавных букв и цифр.
  • Cookie — весь хвост после вертикальной черты, целиком и без изменений.

Признаковый разбор не требует знать порядок полей заранее, и это главное его свойство: выдачу от разных поставщиков прогоняют одинаково, не подбирая шаблон под каждую партию.

Поэтому конвертер показывает не только результат, но и то, сколько строк он разобрал и какие поля в них нашёл. Это и есть проверка: если в партии, помеченной «С почтой», поле почты не находится ни в одной строке, вы узнаете об этом до того, как зальёте список в софт, — и успеете в тридцатиминутное окно замены.

Что задаётся на выходе, а что нет

На выходе задаётся одно: состав и порядок полей. Порядок не пишется текстом — поля встают в том порядке, в каком вы их нажимаете, а ошиблись в последовательности — сбрасываете набор одной кнопкой и собираете заново. Невыбранное поле в результат не попадает вовсе; выбранное, но отсутствующее в исходной строке, встаёт пустым местом — и колонки не съезжают на строках, где чего-то не было.

Разделитель не настраивается ни на входе, ни на выходе, и это сделано намеренно. На входе он определяется у каждой строки отдельно — двоеточие, точка с запятой, табуляция, запятая или вертикальная черта: в один файл нередко складывают выдачу из разных мест, и общий разделитель испортил бы ту половину строк, что написана иначе. На выходе поля всегда склеиваются двоеточием — тем же видом, в котором магазин выдаёт аккаунты.

  • Поля, которых нет в исходной строке, подставляются пустыми — структура столбцов не съезжает.
  • Лишние поля просто не включаются в порядок и в результат не попадают.
  • Всё считается в браузере: исходный список никуда не отправляется, на сервер уходит только сам факт открытия страницы.

Настраивается это один раз под ваш импорт и дальше от партии к партии не меняется — меняется только вход. В этом и смысл инструмента: приводить разные входы к одному вашему выходу.

Последнее стоит отдельного упоминания. Списки аккаунтов — это учётные данные, и загружать их в сторонние онлайн-конвертеры не стоит вовсе. Здесь этой проблемы нет по устройству инструмента, а не по обещанию: расчёт выполняется на вашей стороне.

Файл на вход, счётчик строк и выгрузка

Партию в сотню записей неудобно носить через буфер обмена, поэтому у инструмента есть загрузка файла: выдачу кладут целиком, а не вставляют кусками. Результат выгружается обратно в .txt — тем же файлом, который дальше уходит в импорт.

Счётчик разобранных строк — не украшение, а средство контроля. Число записей обязано совпасть с объёмом, который вы оплатили. Совпало — партия пришла целиком; не совпало — расхождение видно до того, как список уйдёт в софт, и до того, как закроется окно замены.

  • Загрузили файл — сверили счётчик разобранных строк с объёмом заказа.
  • Собрали порядок полей нажатиями, при ошибке сбросили кнопкой и собрали заново.
  • Сверили состав полей с тем, что ждёт импорт: невыбранное в файл не попадёт.
  • Выгрузили .txt и только после этого открыли менеджер аккаунтов.

Сверять стоит не только число строк, но и то, что в выгрузке нет пустых колонок там, где карточка обещала поле. Пустая колонка — законный способ сохранить структуру, но если пустует именно почта или ключ 2FA, это уже расхождение с описанием позиции.

Вся проверка укладывается в минуту и делается до первого входа в аккаунт. Это заметно дешевле, чем обнаружить нехватку поля после заливки, когда тридцать минут уже прошли и позиция считается принятой.

Короткие ответы

Связанные страницы