Как я устал ловить билеты в Крым и в итоге написал себе бота
Есть такой особый вид боли: ты хочешь в Крым. Красиво хочешь: море, горы, Балаклава, походы, мандаринки в бахчисарайском хостеле. Открываешь сайт, выбираешь поезд, уже чувствуешь запах поезда и плацкарта… и в ответ видишь спокойное, как терапевт на приёме: «мест нет».
В какой‑то момент начинаешь думать, что билеты в Крым продают по знакомству, а обычным людям оставляют только истории «ну в этом году не сложилось». У меня долго было так же, пока одна зимняя поездка не закончилась тем, что вместо ещё одной жалобы я сел и написал бота.
Декабрь 2025. Новый год, Крым и первая нервная клетка
У нас есть маленькая компания по «некоммерческому туризму» и телеграм‑канал «Походы — это любовь». Там периодически появляются идеи уровня «а давайте в Крым зимой, с горками, сугробами и морем». В декабре 2025 года одна из таких идей неожиданно прошла стадию «прикольно» и превратилась в конкретный план.
План был простой:
жить в Бахчисарае в хостеле «Лисьи сны», бегать налегке по сугробам на Чуфут‑Кале и Мангуп;
переехать в Соколиное, поселиться в хостеле «Горный», смотреть на заснеженную Бойку и продираться к водопаду Серебряные струи;
финал — более тёплая Балаклава с прогулками до пляжа Инжир, катером по бухте и баней на горе с видом на огни.
Картинка идеальная. Единственное, чего в ней не было, — самих билетов в Крым.
«Мест нет» на поезд в Крым: классический сюжет
Дальше был стандартный сценарий. Я открываю сайт: Москва – Бахчисарай, Москва – Симферополь, нужные даты. Система вежливо сообщает, что мест нет.
Я, как человек разумный, делаю то, что делают все разумные люди:
иду на другой сайт;
пытаюсь сдвинуть даты на день туда, день сюда;
открываю третий сервис;
проверяю ещё раз «на всякий случай».
Спойлер: «на всякий случай» там тоже нет.
Со временем становится понятно, что билеты не то чтобы исчезли навсегда. Они живут своей жизнью: сегодня ноль, завтра кто‑то сдал, послезавтра добавили вагон. Вопрос только в том, сидишь ли ты в этот момент перед экраном или пошёл чинить кран/гулять с собакой/просто жить нормальную жизнь.
Я решил проверить, насколько далеко можно зайти в этой игре.
Лучшие места за всю поездку я получил с пятой попытки.
Сначала взял то, что было: верхние боковые. Это тот момент, когда ты уже не планируешь, а просто хватаешь.
Потом, когда всплыли новые места, сдал билеты и переехал на нижние рядом с туалетом. Жизнь явно стала лучше, но не до конца.
Следующий уровень — обычные нижние боковые.
И только после нескольких кругов «купил–сдал» удалось поймать нормальный человеческий нижний плацкарт в середине вагона.
Все эти манёвры происходили в рамках одного и того же поезда. Система честно подкидывала варианты, но сидеть над ней приходилось практически как над биржей. В какой‑то момент я поймал себя на мысли: вместо того чтобы готовиться к поездке, я играю в «симулятор живого бота».
И тут стало очевидно: если я уже веду себя как бот, может, пора наконец написать настоящего?
Бот для билетов: как я ленился и автоматизировал свою лень
Идея родилась очень по‑человечески: «да ну его, пусть компьютер сидит и страдает».
Суть простая:
один раз задаёшь маршрут и условия,
дальше не обновляешь сайты каждые полчаса,
а получаешь уведомление, когда билеты появляются.
Начиналось всё именно с Крыма: Москва – Бахчисарай, Москва – Симферополь, туда‑сюда. Но быстро выяснилось, что фраза «мест нет» одинаково раздражает и людей, едущих в Крым, и людей, которым просто надо из точки А в точку Б по России.
В итоге бот вырос из «крымского помощника» до нормального инструмента по всей стране.
Сейчас он умеет:
запоминать маршруты (Москва – Бахчисарай и обратно, Москва – куда угодно — ему всё равно);
хранить любимые станции, чтобы не вбивать их каждый раз;
помнить даты и стартовать поиск по умолчанию на нужный день;
учитывать тип вагона (купе, плацкарт, СВ) и нормальные человеческие желания вроде «нижнее, не боковое»;
регулярно проверять наличие билетов и пинговать, когда появились варианты;
вести к покупке по ссылке на сайт перевозчика (через grandtrain), где уже открыт нужный поезд и дата, остаётся только выбрать место и пассажира.
Важно: бот не волшебник, он не достаёт билеты «из‑под полы». Он просто честно сидит вместо вас и смотрит на всё это без эмоциональных рыданий.
Майские в Крыму: когда бот впервые поработал «по плану»
После зимы захотелось реванша, но без квеста «посиди у монитора ещё пару вечеров».
Мы придумали десятидневный горный треккинг по Крыму с палатками. Нормальный такой поход: тропы, виды, усталость, разговоры у костра. И в этот раз я решил, что нервничать будет кто‑то другой. В роли «кто‑то другой» выступил бот.
Я настроил ему:
маршрут Москва – Бахчисарай и обратно;
плацкарт, нижние, без боковых;
нужные станции и даты майских.
После этого благополучно пошёл заниматься жизнью.
Через какое‑то время бот по поиску билетов прислал в телеграм сообщение:
нашлись билеты на нужные даты, нужный поезд, нужные места.
Я просто открыл ссылку с телефона, попал на нужный поезд на сайте перевозчика (через grandtrain), где уже были сохранены данные пассажира, ткнул в адекватное место и купил. Всё.
Никакой романтической истории «сидел до двух ночи и поймал последний вагон». Скучная, взрослая, но приятная история: всё сработало как должно.
Лето и праздники: почему первый «нет» ещё ничего не значит
Летом и в праздники Крым превращается в игру «кто успел — тот и съел». Направления Москва – Симферополь и Москва – Севастополь горят особенно бодро.
Но даже тут картина не так безнадёжна, как кажется после первого «мест нет».
Если разобрать по факту, помогают три вещи:
Чуть‑чуть гибкости по датам. Не один единственный день «только 12‑го и ни минутой позже», а небольшой коридор.
Понимание, что билеты живут волнами: открытие продаж, возвраты, дополнительные вагоны.
Кто‑то, кто эти волны отслеживает, пока вы занимаетесь чем‑то более осмысленным, чем обновление страницы.
Вот эту роль наблюдателя и выполняет бот. Ему всё равно, какой сегодня день недели и сколько времени. Он просто смотрит и сообщает, когда система внезапно решает: «ладно, есть ещё пару мест».
Когда бот особенно выручает (и кому он вообще нужен)
Бот особенно полезен в ситуациях, когда:
хочется поехать не абстрактно «как‑нибудь летом», а конкретно на майские или Новый год;
вы уже пару раз попадали в историю «билеты были, но я не успел»;
вы не против иногда подвинуться по датам или по поезду, если за это дают нормальные места;
вы в принципе считаете, что жизнь слишком коротка, чтобы десять раз в день смотреть на надпись «мест нет».
Тем, кто ездит в Крым и вообще по России регулярно, бот просто снимает фоновую тревогу «а вдруг не успею». Маршруты и даты хранятся внутри, он спокойно следит за изменениями и зовёт вас только тогда, когда реально есть повод.
А если вы готовы немного подстраиваться под разные поезда и места, бот помогает не только «достать хоть какой‑то билет», но и дождаться варианта получше — того самого нижнего плацкарта в середине вагона вместо первых попавшихся верхних боковых.
Как вести себя, когда бот уже нашёл билеты
Здесь есть один технический лайфхак, который экономит нервы.
Когда бот прислал уведомление, это как раз тот момент, когда тянуть не надо. Чтобы всё прошло гладко:
заранее авторизуйтесь на сайте или в приложении перевозчика;
сохраните данные пассажиров в личном кабинете (ФИО, документ, контакты).
Тогда по ссылке от бота вы сразу попадаете на нужный поезд и дату, выбираете место (нижнее, не боковое, подальше от туалета — привет моему прошлому опыту), выбираете уже сохранённого пассажира и нажимаете «купить».
Время от «пришло уведомление» до «у меня есть билет» сокращается до десятков секунд. А шансы, что кто‑то выкупит нужное место раньше вас, заметно падают.
Немного обо мне и о самом боте
Я не туроператор и не продавец чудо‑туров «Крым за три дня». Я обычный человек, который любит Крым в разных состояниях:
зимой, когда вокруг снег и море одновременно,
весной и осенью, когда тропы тихие и людей мало,
летом, когда просто хочется сменить московский фон на горы и воду.
Бот родился из чисто эгоистичного желания перестать страдать с билетами. Но по мере того, как я добавлял фишки, стало понятно, что с такой болью живу не только я.
Сейчас бот полностью бесплатный. Это мой рабочий инструмент и параллельно живой проект, который хочется довести до состояния «включил — и забыл». Я потихоньку добавляю функции, стараюсь не превращать интерфейс в пульт от космического корабля и очень рассчитываю на тех, кто им пользуется.
Если заметите баг, странное поведение или просто подумаете «а вот это было бы удобно» — буду рад любому фидбеку. В буквальном смысле вы поможете сделать сервис лучше, а заодно кому‑то ещё упростите дорогу до Крыма.
В сухом остатке мой рецепт такой:
чуть‑чуть гибкости по датам,
заранее настроенный личный кабинет у перевозчика,
и бот, который молча смотрит на эту карусель билетов и зовёт вас только тогда, когда на горизонте появляется нормальный поезд и вменяемые места.
А дальше всё просто: вы нажимаете пару кнопок — и уже думаете не о том, «успею ли купить», а о том, какой рюкзак брать в следующий раз в Крым.























































