Отлично, помогу разобраться. Задача как найти коды вакансий на сайте kadrout можно решить и вручную, и с помощью небольшого скрипта. Ниже — подробное руководство. Так как ты не указал предмет/класс, дам общий подход, понятный для школьника.
Что будем искать
- Код вакансии обычно представляет собой уникальный идентификатор вакансии (например, набор букв+цифр). Он часто пишется как “Код вакансии”, “ID вакансии”, “Vacancy ID” или просто в формате data-id в карточке вакансии.
Часть 1. Руководство для ручного поиска (пошагово)
- Открой сайт и найдите раздел вакансий
- Перейди на сайт kadrout и открой раздел, где публикуются вакансии (обычно это «Вакансии», «Поиск вакансий», «Каталог вакансий» и т. п.).
- Осмотри карточку вакансии
- На странице со списком вакансий посмотри на каждую карточку. Часто код находится прямо в тексте карточки или рядом с заголовком.
- Если не видно, нажми на «Подробнее»/«Читать далее» у вакансии — иногда там в заголовке, подзаголовке или внизу в блоке с параметрами есть «Код вакансии» или «ID».
- Поиск по странице
- В браузере используй поиск по странице (Ctrl+F или Cmd+F). Введи варианты:
- «Код вакансии», «Код», «ID вакансии», «Vacancy ID», «ID».
- Если найдешь текст, переходи к соседнему элементу (рядом обычно и будет сам код).
- Проверка в источнике/разметке
- Открой просмотр кода страницы (Правой кнопкой — «Посмотреть код» или Ctrl+U). Поиск по слову «vacanc» или «id» может показать, где хранится код.
- Часто код бывает в атрибуте data-id у элементов карточки (например, div class="vacancy-card" data-id="VK-12345").
- Дополнительные способы
- Иногда код есть в URL самой вакансии (после перехода по карточке открой адрес в адресной строке — там может быть номер).
- Если у сайта есть RSS/JSON-ленты вакансий, там обычно каждый элемент содержит поле id или code.
Часть 2. Как найти коды быстрее через поиск по сайту (для любого сайта)
- Используй встроенный поиск сайта:
- В браузере: site:kadrout.ru вакансия код (замени домен на реальный, если нужно).
- Ищи по ключам: «Код вакансии», «ID вакансии», «Vacancy ID».
- Если доступны фильтры, попробуй фильтровать по параметру «Код» или «ID» (иногда такие поля скрыты в фильтрах).
Часть 3. Пример как это сделать автоматически (с натяжкой под любой сайт)
Если хочешь автоматизировать, можно написать маленький скрипт. Ниже общая схема и пример на Python с использованием BeautifulSoup. Учти: конкретные CSS‑селекторы будут зависеть от разметки сайта, поэтому их нужно адаптировать под kadrout.
Что понадобится:
- Python 3.x
- Библиотеки: requests, beautifulsoup4
Пример кода (адаптируй CSS‑селектор под реальную разметку)
- Ручной парсинг одной страницы списка вакансий
import requests from bs4 import BeautifulSoup
url = 'kadrout.example.com' # замените реальным URL headers = {'User-Agent': 'Mozilla/5.0'}
resp = requests.get(url, headers=headers, timeout=15) resp.raise_for_status()
soup = BeautifulSoup(resp.text, 'html.parser')
Пример 1: поиск элементов с data-id
codes = [] for card in soup.select('[data-id]'): codes.append(card['data-id'])
Пример 2: поиск текстового "Код вакансии" рядом с текстом
(нужна реальная структура — этот блок демонстрационный)
for label in soup.find_all(string=lambda t: 'Код вакансии' in t or 'ID вакансии' in t): parent = label.find_parent() if parent: # попытка вытащить код из соседнего элемента sib = parent.find_next_sibling() if sib: codes.append(sib.get_text(strip=True))
print(list(dict.fromkeys(codes)))
- Динамическая подгрузка (если данные подгружаются JS)
- Используй Selenium или Playwright, чтобы прогнать страницу и подхватить элементы после полной загрузки JS.
Пример (минималистичный, с Selenium):
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.chrome.service import Service import time
driver = webdriver.Chrome() # укажи путь к chromedriver, если нужно driver.get('kadrout.example.com') time.sleep(5) # подожди загрузку JS
cards = driver.find_elements(By.CSS_SELECTOR, '.vacancy-card') # адаптируй селектор codes = [] for c in cards: code = c.get_attribute('data-id') # если есть data-id if code: codes.append(code)
driver.quit() print(list(dict.fromkeys(codes)))
Важно:
- Уважай правила сайта: посмотри robots.txt, ограничения на скрапинг, частоту запросов.
- Если у сайта есть API или экспорт вакансий, лучше пользоваться им.
Часть 4. Что сделать дальше
- Хочешь, я адаптирую инструкции под конкретную страницу kadrout? Пришли, пожалуйста:
- ссылку на раздел вакансий или одну-две карточки.
- пример того, как выглядит код вакансии (скриншот или точный текст, если есть).
- Я дам точные CSS‑селекторы и готовый рабочий скрипт под твой случай.
Готов продолжать: скажи, хочешь пошаговую инструкцию для ручного поиска или готовый скрипт (и под такую задачу: “снять коды всех вакансий со страницы N”)? Также можешь прислать ссылку на сайт — адаптирую конкретно под него.
