Бесплатный урок с нашим репетитором!

Узнать подробнее

Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Посмотреть все вопросы нейросети
Бесплатный пробный урок с репетитором

Узнай больше про репетиторов Новой Школы и запишись на бесплатный пробный урок. Мы проверим твой уровень знаний и составим план обучения по любому предмету и классу

Вопрос от Анонимного юзера 02 декабря 2025 13:19

Найти на kadrout код вакансии за последний 7 дней

Ответ нейросети

02 декабря 2025 13:19

Вот подробное решение по шагам, как найти коды вакансий на сайте kadrout за последние 7 дней. Так как точный способ зависит от того, как именно сайт строит страницы (статические данные, API, или динамическая подгрузка), ниже приведены несколько рабочих подходов. Выберите тот, который подходит для вашего случая, и скажите, если хотите, адаптирую под конкретную страницу.

Цель

  • Понять, как получить список кодов вакансий за последние 7 дней и вывести их.

Подходы (кратко)

  1. Через встроенный фильтр на сайте (если есть фильтр по дате).
  2. Через API сайта (если у kadroout есть открытое API вакансий).
  3. Через веб-скрейпинг (если данные выдаются в HTML без API, возможно статично или через пагинацию).
  4. Через веб-скрейпинг с динамической подгрузкой (если карточки загружаются JS-ом; потребуется Selenium/Playwright).

Важно

  • Код вакансии обычно берётся из URL вакансии (например /vacancies/12345) или из атрибута data-id на карточке.
  • Учтите временную зону и формат даты на сайте.
  • Соблюдайте правила сайта (robots.txt, условия пользования). Если есть API, используйте его.

Детали и решения

  1. Если на сайте есть фильтр «за последние 7 дней» (самый простой способ)
  • Откройте раздел вакансий.
  • Найдите фильтр по дате публикации и выберите опцию последних 7 дней.
  • Запустите поиск и просмотрите результаты.
  • В каждом результатах найдите код вакансии (обычно в URL вакансии или в элементе data-id).
  • Соберите все коды.

Как автоматизировать (общий шаблон)

  • Этапы: отправить запрос на страницу с фильтром, распарсить страницу, собрать коды, перейти к следующей странице (если есть пагинация), повторять до конца.
  1. API Kadроout (если доступен)
  • Часто сайты предоставляют API вида /api/vacancies?from=YYYY-MM-DD&to=YYYY-MM-DD&page=1
  • Преимущество: легче и быстрее, меньше риска блокировки.

Пример общей идеи (псевдокод, адаптируйте под реальный API)

  • Что делаем:

    • Определяем период: from = сегодня - 7 дней, to = сегодня.
    • Проходим по страницам, собираем идентификаторы вакансий.
  • Пример на Python (общий каркас)

    • ВАЖНО: замените BASE_URL и поля ответа на реальные из вашего API.

    • Код: import requests from datetime import date, timedelta

    BASE_API = "https://kadrout.ru/api/vacancies" # пример URL API def fetch_codes_last_7_days(): end = date.today() start = end - timedelta(days=7) page = 1 codes = [] while True: url = f"{BASE_API}?from={start.isoformat()}&to={end.isoformat()}&page={page}" r = requests.get(url, timeout=15) if r.status_code != 200: break data = r.json() items = data.get("vacancies") or data # подстройте под реальную структуру if not items: break for v in items: # пример: id может называться "id" или "vacancy_id" vid = v.get("id") or v.get("vacancy_id") if vid: codes.append(vid) if not data.get("has_more"): # если API сообщает, есть ли следующая страница break page += 1 return codes

    if name == "main": codes = fetch_codes_last_7_days() print(sorted(set(codes)))

  1. Веб-скрейпинг статичных страниц (без JS-рендеринга)
  • Этапы:

    • Открыть страницу с вакансиями и пагинацией.
    • Для каждой карточки извлечь дату и код вакансии.
    • Фильтровать карточки по дате: оставить только те, у которых дата публикации не старше 7 дней.
    • Перейти на следующую страницу до тех пор, пока дата не уйдет ранее 7 дней.
  • Пример на Python (с использованием requests + BeautifulSoup) ВНИМАНИЕ: замените селекторы на реальные после inspectPage. import requests from bs4 import BeautifulSoup from datetime import datetime, date, timedelta

    BASE_URL = "https://kadrout.ru/vacancies" # реальная страница каталога

    def parse_date(text): # Реальная функция должна правильно разобрать формат даты на сайте t = text.strip().lower() now = datetime.utcnow() if "сегодня" in t: return now.date() if "вчера" in t: return (now - timedelta(days=1)).date() # Попытка распарсить конкретную дату вида dd.mm.yyyy или yyyy-mm-dd for fmt in ("%d.%m.%Y", "%Y-%m-%d"): try: return datetime.strptime(text, fmt).date() except ValueError: pass return None def fetch_codes_static(): since = date.today() - timedelta(days=7) codes = set() page = 1 while True: url = f"{BASE_URL}?page={page}" r = requests.get(url, timeout=15) if r.status_code != 200: break soup = BeautifulSoup(r.text, "html.parser") cards = soup.select(".vacancy-card") # заменить на реальный селектор if not cards: break for card in cards: date_text = card.select_one(".vacancy-date").get_text(strip=True) # заменить селектор d = parse_date(date_text) if d and d < since: continue # либо прекратить, если сортировка слева направо a = card.find('a', href=True) code = None if a: href = a['href'] code = href.rstrip('/').split('/')[-1] if code: codes.add(code) page += 1 return sorted(codes) if name == "main": codes = fetch_codes_static() print(codes)

  1. Веб-скрейпинг с динамическим контентом (JS-рендеринг)
  • Многие сайты подгружают данные через JS (分页ная загрузка, infinite scroll).

  • Решение: использовать Selenium или Playwright.

  • Шаги:

    • Открыть страницу с вакансиями.
    • Прокручивать страницу до загрузки всех карточек за нужный диапазон дат (можно ограничиться несколькими страницами).
    • Извлечь код вакансии из URL или data-id.
    • Фильтровать по дате публикации (если дата видна на карточке).
    • Собрать уникальные коды.
  • Пример (очень упрощённый) на Python с Selenium: from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time from datetime import date, timedelta, datetime

    BASE_URL = "https://kadrout.ru/vacancies"

    def fetch_codes_dynamic(days=7): since = date.today() - timedelta(days=days) driver = webdriver.Chrome() # или другой драйвер driver.get(BASE_URL) codes = set() # Пример: прокрутка до конца, чтобы загрузить все карточки last_height = driver.execute_script("return document.body.scrollHeight") while True: driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") time.sleep(2) new_height = driver.execute_script("return document.body.scrollHeight") if new_height == last_height: break last_height = new_height cards = driver.find_elements(By.CSS_SELECTOR, ".vacancy-card") # заменить на реальный селектор for c in cards: date_text = c.find_element(By.CSS_SELECTOR, ".vacancy-date").text # заменить d = parse_date(date_text) if d and d < since: continue a = c.find_element(By.TAG_NAME, "a") href = a.get_attribute("href") code = href.rstrip('/').split('/')[-1] if code: codes.add(code) driver.quit() return sorted(codes)

    Вспомогательная функция parse_date здесь должна быть аналогично статическому варианту

    if name == "main": codes = fetch_codes_dynamic() print(codes)

  1. Как определить конкретные селекторы и поля
  • Откройте страницу в браузере.
  • Инструмент "Inspect" (разбираем элемент):
    • Найдите карточку вакансии. Обычно она помечена классами вроде vacancy-card.
    • Найдите элемент даты публикации — он может называться vacancy-date, date, published, и т.д.
    • Узнайте URL вакансии и формат кода: например /vacancies/12345, и вытягивайте 12345 как код.
  • Примените эти селекторы в вашем выбранном подходе.
  1. Практические советы
  • Всегда тестируйте на нескольких страницах: страница 1, 2, 3, чтобы понять структуру.
  • Обязательно добавляйте задержки между запросами, чтобы не перегружать сервер и не попасть под блокировку.
  • Обрабатывайте ошибки сетевого уровня и формат даты.
  • Уважайте правила использования сайта и robots.txt.
  • При отсутствии API или статической страницности предпочтительнее использовать официальный API, если он есть.

Что можно сделать прямо сейчас

  • Если у вас есть ссылка на конкретную страницу kadroout с вакансиями, пришлите её. Я подскажу точные селекторы и дам готовый рабочий скрипт под именно эту страницу (и безопасную реализацию, учитывающую фильтр «последние 7 дней»).
  • Если хотите, могу адаптировать код под API, если вы знаете базовый URL API и пример ответа.

Итог

  • Я предложил несколько рабочих путей: через встроенный фильтр, через API, через статический и динамический скрейпинг.
  • Выберите подход, скажите, есть ли у kadroout API или конкретная страница, и пришлите ссылку — я подготовлю точный и готовый к запуску скрипт на вашем языке (например, Python) под ваш сайт и версию страницы.

Задай свой вопрос

Напиши любую задачу или вопрос, а нейросеть её решит

Похожие вопросы 15

Бесплатно Мобильное приложение ГДЗ
Мобильное приложение ГДЗ

Задавай вопросы искуcственному интеллекту текстом или фотографиями в приложении на iPhone или Android

qr-codegoogle-playapp-store

Саша — ассистент в телеграмме

найти на kadrout код вакансии за последний 7 дней
Вот подробное решение по шагам, как найти коды вакансий на сайте kadrout за последние 7 дней. Так как точный способ зависит от того, как именно сайт строит страницы (статические данные, API, или динамическая подгрузка), ниже приведены несколько рабочих подходов. Выберите тот, который подходит для вашего случая, и скажите, если хотите, адаптирую под конкретную страницу. Цель - Понять, как получить список кодов вакансий за последние 7 дней и вывести их. Подходы (кратко) 1) Через встроенный фильтр на сайте (если есть фильтр по дате). 2) Через API сайта (если у kadroout есть открытое API вакансий). 3) Через веб-скрейпинг (если данные выдаются в HTML без API, возможно статично или через пагинацию). 4) Через веб-скрейпинг с динамической подгрузкой (если карточки загружаются JS-ом; потребуется Selenium/Playwright). Важно - Код вакансии обычно берётся из URL вакансии (например /vacancies/12345) или из атрибута data-id на карточке. - Учтите временную зону и формат даты на сайте. - Соблюдайте правила сайта (robots.txt, условия пользования). Если есть API, используйте его. Детали и решения 1) Если на сайте есть фильтр «за последние 7 дней» (самый простой способ) - Откройте раздел вакансий. - Найдите фильтр по дате публикации и выберите опцию последних 7 дней. - Запустите поиск и просмотрите результаты. - В каждом результатах найдите код вакансии (обычно в URL вакансии или в элементе data-id). - Соберите все коды. Как автоматизировать (общий шаблон) - Этапы: отправить запрос на страницу с фильтром, распарсить страницу, собрать коды, перейти к следующей странице (если есть пагинация), повторять до конца. 2) API Kadроout (если доступен) - Часто сайты предоставляют API вида /api/vacancies?from=YYYY-MM-DD&to=YYYY-MM-DD&page=1 - Преимущество: легче и быстрее, меньше риска блокировки. Пример общей идеи (псевдокод, адаптируйте под реальный API) - Что делаем: - Определяем период: from = сегодня - 7 дней, to = сегодня. - Проходим по страницам, собираем идентификаторы вакансий. - Пример на Python (общий каркас) - ВАЖНО: замените BASE_URL и поля ответа на реальные из вашего API. - Код: import requests from datetime import date, timedelta BASE_API = "https://kadrout.ru/api/vacancies" # пример URL API def fetch_codes_last_7_days(): end = date.today() start = end - timedelta(days=7) page = 1 codes = [] while True: url = f"{BASE_API}?from={start.isoformat()}&to={end.isoformat()}&page={page}" r = requests.get(url, timeout=15) if r.status_code != 200: break data = r.json() items = data.get("vacancies") or data # подстройте под реальную структуру if not items: break for v in items: # пример: id может называться "id" или "vacancy_id" vid = v.get("id") or v.get("vacancy_id") if vid: codes.append(vid) if not data.get("has_more"): # если API сообщает, есть ли следующая страница break page += 1 return codes if __name__ == "__main__": codes = fetch_codes_last_7_days() print(sorted(set(codes))) 3) Веб-скрейпинг статичных страниц (без JS-рендеринга) - Этапы: - Открыть страницу с вакансиями и пагинацией. - Для каждой карточки извлечь дату и код вакансии. - Фильтровать карточки по дате: оставить только те, у которых дата публикации не старше 7 дней. - Перейти на следующую страницу до тех пор, пока дата не уйдет ранее 7 дней. - Пример на Python (с использованием requests + BeautifulSoup) ВНИМАНИЕ: замените селекторы на реальные после inspectPage. import requests from bs4 import BeautifulSoup from datetime import datetime, date, timedelta BASE_URL = "https://kadrout.ru/vacancies" # реальная страница каталога def parse_date(text): # Реальная функция должна правильно разобрать формат даты на сайте t = text.strip().lower() now = datetime.utcnow() if "сегодня" in t: return now.date() if "вчера" in t: return (now - timedelta(days=1)).date() # Попытка распарсить конкретную дату вида dd.mm.yyyy или yyyy-mm-dd for fmt in ("%d.%m.%Y", "%Y-%m-%d"): try: return datetime.strptime(text, fmt).date() except ValueError: pass return None def fetch_codes_static(): since = date.today() - timedelta(days=7) codes = set() page = 1 while True: url = f"{BASE_URL}?page={page}" r = requests.get(url, timeout=15) if r.status_code != 200: break soup = BeautifulSoup(r.text, "html.parser") cards = soup.select(".vacancy-card") # заменить на реальный селектор if not cards: break for card in cards: date_text = card.select_one(".vacancy-date").get_text(strip=True) # заменить селектор d = parse_date(date_text) if d and d < since: continue # либо прекратить, если сортировка слева направо a = card.find('a', href=True) code = None if a: href = a['href'] code = href.rstrip('/').split('/')[-1] if code: codes.add(code) page += 1 return sorted(codes) if __name__ == "__main__": codes = fetch_codes_static() print(codes) 4) Веб-скрейпинг с динамическим контентом (JS-рендеринг) - Многие сайты подгружают данные через JS (分页ная загрузка, infinite scroll). - Решение: использовать Selenium или Playwright. - Шаги: - Открыть страницу с вакансиями. - Прокручивать страницу до загрузки всех карточек за нужный диапазон дат (можно ограничиться несколькими страницами). - Извлечь код вакансии из URL или data-id. - Фильтровать по дате публикации (если дата видна на карточке). - Собрать уникальные коды. - Пример (очень упрощённый) на Python с Selenium: from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time from datetime import date, timedelta, datetime BASE_URL = "https://kadrout.ru/vacancies" def fetch_codes_dynamic(days=7): since = date.today() - timedelta(days=days) driver = webdriver.Chrome() # или другой драйвер driver.get(BASE_URL) codes = set() # Пример: прокрутка до конца, чтобы загрузить все карточки last_height = driver.execute_script("return document.body.scrollHeight") while True: driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") time.sleep(2) new_height = driver.execute_script("return document.body.scrollHeight") if new_height == last_height: break last_height = new_height cards = driver.find_elements(By.CSS_SELECTOR, ".vacancy-card") # заменить на реальный селектор for c in cards: date_text = c.find_element(By.CSS_SELECTOR, ".vacancy-date").text # заменить d = parse_date(date_text) if d and d < since: continue a = c.find_element(By.TAG_NAME, "a") href = a.get_attribute("href") code = href.rstrip('/').split('/')[-1] if code: codes.add(code) driver.quit() return sorted(codes) # Вспомогательная функция parse_date здесь должна быть аналогично статическому варианту if __name__ == "__main__": codes = fetch_codes_dynamic() print(codes) 5) Как определить конкретные селекторы и поля - Откройте страницу в браузере. - Инструмент "Inspect" (разбираем элемент): - Найдите карточку вакансии. Обычно она помечена классами вроде vacancy-card. - Найдите элемент даты публикации — он может называться vacancy-date, date, published, и т.д. - Узнайте URL вакансии и формат кода: например /vacancies/12345, и вытягивайте 12345 как код. - Примените эти селекторы в вашем выбранном подходе. 6) Практические советы - Всегда тестируйте на нескольких страницах: страница 1, 2, 3, чтобы понять структуру. - Обязательно добавляйте задержки между запросами, чтобы не перегружать сервер и не попасть под блокировку. - Обрабатывайте ошибки сетевого уровня и формат даты. - Уважайте правила использования сайта и robots.txt. - При отсутствии API или статической страницности предпочтительнее использовать официальный API, если он есть. Что можно сделать прямо сейчас - Если у вас есть ссылка на конкретную страницу kadroout с вакансиями, пришлите её. Я подскажу точные селекторы и дам готовый рабочий скрипт под именно эту страницу (и безопасную реализацию, учитывающую фильтр «последние 7 дней»). - Если хотите, могу адаптировать код под API, если вы знаете базовый URL API и пример ответа. Итог - Я предложил несколько рабочих путей: через встроенный фильтр, через API, через статический и динамический скрейпинг. - Выберите подход, скажите, есть ли у kadroout API или конкретная страница, и пришлите ссылку — я подготовлю точный и готовый к запуску скрипт на вашем языке (например, Python) под ваш сайт и версию страницы.