{"id":13508,"url":"\/distributions\/13508\/click?bit=1&hash=84881d55bbad8a9fea0858220d4fa15ea06fdd4fceb0218db01a425f0cc754d2","title":"\u041a\u0430\u043a \u0441\u043d\u044f\u0442\u044c \u0440\u043e\u043b\u0438\u043a \u0441 \u0440\u0430\u0431\u043e\u0442\u043d\u0438\u043a\u0430\u043c\u0438, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u043d\u0435 \u0441\u0442\u044b\u0434\u043d\u043e","buttonText":"","imageUuid":"","isPaidAndBannersEnabled":false}
Трибуна
Andrew Yurtaev

Как я устал искать ЖД билеты в Крым и обратно и в итоге написал бота

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

Я проживаю в Крыму и мне довольно часто приходится ездить по работе в Москву и с закрытием полетов это стало сущей проблемой. Билетов на поезд нет от слова совсем, запланировать поездку практически не получается. Изначально я пробовал постоянно мониторить сайт с билетами, но после 30 минут этих действий я задолбался и стал думать как это можно решить другим путем.

Поискал готовые решения в интернете, наткнулся на парочку мертвых ботов.

Которые выдавали примерно следующее, а часть вообще молчала и ничего не делала.

жаль не написал дату RIP

Было решено написать своего бота, не опускать же руки.

После недолгих поисков обнаружилось самописное API от стороннего разработчика и наш программист ушел его выкуривать на несколько дней. К сожалению РЖД довольно хорошо контролирует кол-во запросов с одного адреса и мы периодически улетали в бан по мере тестирования.

Спасибо автору, он помог разобраться во многих вопросах.

И вот спустя неделю была написана первая версия, которая просто искала любое свободное место на нужную дату. Кстати я на радостях купил себе билет, правда было только верхнее место, но меня это не волновало я быстро его выкупил. Поиск в итоге длился около трех часов.

О чудо! Три часа и билет был найден!

После того как мы поняли что бот в целом может найти билеты, мы решили расширить его функционал и добавить фильтры, тип вагона, диапазон дат, кол-во человек и тип места(нижнее верхнее)

Эта задачка была уже посложнее, так как API такой информацией не владеет по данному направлению следования и выдать ее не может. Было решено парсить страницу сайта и вытаскивать из нее нужную нам информацию. На это еще ушла неделя вместе с тестированием.

Ну наконец!

Мы уже неделю пользуемся ботом, он прекрасно ищет для нас билеты, правда иногда поиск занимает больше суток, особенно на нижние места.

Решили прикрутить к нему оплату и попробовать выкатить в общее пользование.

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

Основными направлениями поиска были выбраны маршруты Москва-Симферополь, Симферополь-Москва, Санкт-Петербург - Симферополь и Симферополь - Санк-Петербург.

Кстати можем сделать автопоиск и на любой другой маршрут, просто не анализировали где есть еще такая же проблема с билетами.

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

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

пример выдачи и кнопка ссылкой на покупку

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

Вот собственно и сам бот https://t.me/BiletNaPoezdBot Надеюсь кому то он окажется полезен, так же как и нам.

P.S. Первый билет я по итогу сдал, так как смог найти позже на нижнее место.

0
11 комментариев
Написать комментарий...
Роман Хасанов

Надо попробовать. Я тоже задолбался искать билеты.

Ответить
Развернуть ветку
Алексей Beton

Классная тема

Ответить
Развернуть ветку
Алексей Beton

Ух ты! Нашел билет в Симферополь на 25 число )
Бот явно веселее, чем тыкать F5 по 30 раз в день!

Ответить
Развернуть ветку
Звенислав Николаевич

А почему билеты "выбрасываются" на сайте? Это возвраты?

Ответить
Развернуть ветку
Andrew Yurtaev
Автор

Да, это они есть, по сути мы их и пытаемся выловить. Ну или это заговор РЖД ))

Ответить
Развернуть ветку
Mikhail Che

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

Ответить
Развернуть ветку
Andrew Yurtaev
Автор

Спасибо, вот только начали его пиарить и уже попросили добавить новые направления. Добавили еще два Сочи и Минеральные Воды.

Ответить
Развернуть ветку
Василий Петров

Бот платный?

Ответить
Развернуть ветку
Andrew Yurtaev
Автор

Бесплатный если билеты есть в наличии, платный если нужно запустить автопоиск на нужную дату с вашими фильтрами.

Ответить
Развернуть ветку
Лев Щенин

Крым - это тема !
Нужно отдельно сортировать бизнес-проекты по хэштегу #Крым !

Ответить
Развернуть ветку
Илья Хальзов

Андрюха, это крутяк! Спасибо!

Ответить
Развернуть ветку
Читать все 11 комментариев
null