Работа с датой и временем в BAS
Модуль «Дата и время» в Browser Automation Studio — как BAS хранит время в миллисекундах UNIX, и действия для создания, конвертации, сравнения и сдвига дат и таймзон.
Автоматизация живёт на времени: метки времени, интервалы, «подождать до завтра», «постить только раз в шесть часов». Модуль «Дата и время» даёт BAS точный и согласованный способ со всем этим работать.
Как BAS хранит время
BAS использует своё представление даты и времени на базе UNIX-времени — количества миллисекунд с полуночи UTC 1 января 1970 года («эра UNIX»). UNIX-время согласуется с UTC и является стандартной кодировкой, принятой в операционных системах.
Хранение времени одним числом миллисекунд даёт реальные плюсы: тривиально сравнивать две даты с точностью до миллисекунды, оно чисто конвертируется в любой человекочитаемый формат и компактно — всего 4 или 8 байт. На больших объёмах куда эффективнее держать время одной величиной, чем набором отдельных полей.
Что умеет модуль
Модуль богат действиями под любую частую нужду:
- Конвертировать дату в строку и строку обратно в дату.
- Конвертировать миллисекунды в дату и обратно.
- Создать дату явно или получить текущую дату сейчас.
- Добавить секунды к дате и вычислить разницу между двумя датами.
- Изменить таймзону даты и прочитать её таймзону.
- Извлечь части: день месяца, день недели, год, месяц, неделю, часы, минуты, секунды, миллисекунды.
Когда к нему обращаться
Используйте его всегда, когда боту нужно проставить данным время, измерить, сколько прошло с события, ограничить действие интервалом или привязать записи к таймзоне. Если вы планируете запуск скрипта в конкретное время, этот модуль покрывает логику — либо опирайтесь на встроенный планировщик. В любом случае, поскольку под капотом всё лежит на миллисекундах UNIX, арифметика времени остаётся согласованной, как бы вы её ни отображали.
Вопросы и ответы
Как BAS представляет дату и время?
BAS использует своё представление на основе UNIX-времени — количества миллисекунд с полуночи UTC 1 января 1970 года. Оно компактно и легко сравнивается или конвертируется в любой человекочитаемый формат.
Может ли BAS запускать скрипт в определённое время?
Да. Модуль «Дата и время» достаточно богат для логики по времени, а у BAS есть и встроенный планировщик. Используйте любой, чтобы запустить сценарий в конкретный момент.
Ещё по теме
- Browser Automation Studio: полный практический гидГид
- Создаём первого бота в Browser Automation StudioПошаговый разбор создания первого рабочего бота в BAS — от пустого проекта до процесса, который ходит по страницам, извлекает данные и работает в несколько потоков.
- Настройка прокси в Browser Automation StudioКак правильно настроить прокси в BAS — типы прокси, привязка по потокам, ротация и проверки, которые не дают мультиаккаунт-ботам попасть под бан.
- Поиск элементов в BAS: селекторы, которые не ломаютсяКак работает поиск элементов в Browser Automation Studio — CSS против XPath, почему записанные селекторы ломаются и как писать селекторы, переживающие изменения страницы.