
Поиск туров на Level.Travel
Поиск пакетных туров на Level.Travel — крупном российском агрегаторе с ценами в реальном времени. Поставщик данных для Яндекс.Путешествий.
SKILL.md
Level.Travel Tour Search
Search for package tours on Level.Travel — a major Russian aggregator with real-time pricing from tour operators, powering Yandex.Travel's tour section.
Overview
Level.Travel is a minimalist, modern tour aggregator that integrates directly with tour operators for real-time pricing. It powers Yandex.Travel's package tour content via a B2B API. Ranked #15 in the Travel & Tourism category in Russia. Known for clean UI and live social proof ("44 minutes ago Valeria from Moscow bought a tour to Turkey").
When to use: Best for real-time pricing verification, clean interface, and Yandex ecosystem users.
Установка browser-use
Для работы этого навыка необходим browser-use.
Если browser-use не установлен — активируй навык browser-use и следуй его инструкциям. Он автоматически установит Python, pip и browser-use для твоей платформы.
Пока идёт установка, скажи: «Настраиваю поиск, это займёт пару минут...» НЕ показывай пользователю команды, ошибки или технические детали.
Quick Start
browser-use --headed open https://level.travel
browser-use state
Search Flow
Step 1: Open Homepage
browser-use --headed open https://level.travel
Level.Travel loads a minimalist hero with a single prominent search form (Next.js App Router). The design is clean with few distractions. Important: The form has zero <input> elements — all controls are custom React divs/buttons.
Step 2: Set Destination
The destination field is a clickable div (not an input) that opens a picker modal.
# Click the destination picker
browser-use click '[data-testid="DESTINATION_PICKER_PREVIEW_TEST_ID"]'
# Or by visible text
browser-use click "Куда хотите поехать"
# After the picker modal opens, an input appears for typing
browser-use type "Турция"
# Select from results
browser-use click "Турция"
Step 3: Set Travelers
# Click the traveler count div
browser-use click '[data-testid="TOURISTS_PICKER_PREVIEW_TEST_ID"]'
# Or by text
browser-use click "2 взрослых"
# Adjust in the popup
browser-use click "+" # Add adult
browser-use click "-" # Remove adult
Step 4: Set Departure City
# Click the departure picker div
browser-use click '[data-testid="DEPARTURE_PICKER_PREVIEW_TEST_ID"]'
# Or by text
browser-use click "Город вылета"
browser-use type "Москва"
browser-use click "Москва"
Step 5: Submit Search
# Click the search button
browser-use click '[data-testid="CIGARETTE_SUBMIT_BUTTON_PREVIEW_TEST_ID"]'
# Or by visible text
browser-use click "Найти"
Wait for results — Level.Travel queries operators directly, typically 5-15 seconds.
Step 6: Read Results
browser-use state
Results display as hotel cards with:
- Hotel name + star rating
- Price per person
- Available dates and durations
- Tour operator name
- Meal plan indicator
DOM Reference (Stable Selectors)
Level.Travel uses data-testid attributes — use these for stable automation:
| Element | Selector | Type |
|---|---|---|
| Destination picker | [data-testid="DESTINATION_PICKER_PREVIEW_TEST_ID"] | div |
| Tourists picker | [data-testid="TOURISTS_PICKER_PREVIEW_TEST_ID"] | div |
| Departure picker | [data-testid="DEPARTURE_PICKER_PREVIEW_TEST_ID"] | div |
| Search button | [data-testid="CIGARETTE_SUBMIT_BUTTON_PREVIEW_TEST_ID"] | button |
| Tours tab | [data-testid="SEARCH_TAB_TOURS_DATA_TEST_ID"] | a |
| Hotels tab | [data-testid="SEARCH_TAB_HOTELS_DATA_TEST_ID"] | a |
| Countries list | [data-testid="DESTINATION_COUNTRIES_LIST_TEST_ID"] | div |
| Cities list | [data-testid="DESTINATION_CITIES_LIST_TEST_ID"] | div |
Key automation notes:
- No
<input>elements exist in the initial DOM. Click picker divs first to open modals, then type in the dynamically-created inputs. - CSS module hashes (e.g.,
__djTqk) change on rebuild — preferdata-testidselectors. /search/is a client-side route (301 redirect on direct server access). Navigate to homepage first, then interact with the form.
URL Structure for Direct Navigation
Search results URL format (client-side SPA route):
/search/{DestinationSlug}/departure/{checkin}-{checkout}/{adults}-adults/{nights}-nights/
Example:
https://level.travel/search/Turkey-TR/departure/1-6-2026-13-6-2026/2-adults/7-nights/
Hotel detail page (server-rendered, direct access works):
/hotels/{HotelId}-{HotelSlug}?from={CityCode}&start_date={YYYY-MM-DD}&nights={N}&search_type=package&adults={N}
Price calendar (server-rendered):
/explore/{City}-{Country}/{Destination}/{month}
Result Extraction
| Field | Description | Example |
|---|---|---|
| Hotel | Name + stars | "Rixos Premium 5★" |
| Price | Per person, RUB | "71 200 ₽" |
| Dates | Available date range | "1 июл — 8 июл" |
| Nights | Duration | "7 ночей" |
| Meal | Board type | "Всё включено" |
| Operator | Tour operator | "Coral Travel" |
Advanced Features
Hot Tour Feed (Лента горящих туров)
browser-use --headed open https://level.travel/hot
# Or from main page
browser-use click "Лента горящих туров"
A feed of last-minute discounted tours.
Low Price Calendar
browser-use click "Календарь низких цен"
Shows a month-by-month grid with cheapest prices per destination.
Destination Categories
Level.Travel organizes destinations by category:
- Средиземное море (Mediterranean)
- Тропические курорты (Tropical Resorts)
- Тропические острова (Tropical Islands)
- Горные курорты (Mountain Resorts)
- Юго-Восточная Азия (Southeast Asia)
- СНГ (CIS countries)
- Ближний Восток (Middle East)
Social Proof
The site shows live purchase notifications like: "44 минуты назад Валерия из Москвы купила тур в Турцию за 21 810 ₽/чел"
This can be used to gauge current pricing trends.
App-Exclusive Discounts
Level.Travel promotes app-only promos:
- "-10% на первый заказ" with promo code
- Discount up to 1000 RUB
Note these for users who ask about getting the best price.
Pros & Cons
Pros:
- Real-time pricing directly from operators
- Cleanest UI among aggregators
- Powers Yandex.Travel (data verified)
- Low Price Calendar for date flexibility
- Hot Tour Feed for deals
- Live social proof for trust
Cons:
- No public API (B2B only, powers Yandex)
- Fewer operators than Travelata/Sletat
- Limited filtering on results page
- App-promoted discounts can't be accessed via browser
- Less content (hotel photos, reviews) than competitors
- Minimalist design hides some useful features
Troubleshooting
| Issue | Solution |
|---|---|
| Autocomplete not showing | Clear the field, retype slowly |
| "No results found" | Broaden date range or try different city |
| Price differs from operator site | Real-time prices fluctuate; note the timestamp |
| Hot tour feed empty | Check during peak booking season (summer for Turkey) |
| Calendar widget stuck | Click outside to close, then reopen |