CoderCastrov logo
CoderCastrov
Парсер веб-страниц

Парсинг Вакансий с Indeed: Автоматизированный Парсинг

Парсинг Вакансий с Indeed: Автоматизированный Парсинг
просмотров
11 мин чтение
#Парсер веб-страниц
Table Of Content
Data scraping Automation

Американское бюро трудовой статистики сообщило в ноябре, что 10 миллионов граждан США ищут работу.

Работа восстанавливается по всему миру после травмы, нанесенной пандемией Covid. В 2020 году отрасль найма в США сократилась с $150 млрд до $119 млрд. Тенденции были схожи по всему миру. Но хорошая новость в том, что увольнения больше не становятся заголовками новостей, и кадровые агентства наблюдают всплеск найма, обучения и подбора персонала.

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

Этот обзор написан с целью стать вашим гидом по созданию мощного и надежного парсера вакансий Indeed.com с использованием Octoparse. Мы начинаем с освежения в памяти о парсинге вакансий, а затем переходим к практическому демонстрации парсинга вакансий с Indeed.

Содержание статьи:

Парсинг вакансий на Indeed

Вы можете парсить вакансии не только с Indeed, но и с любого количества других досок объявлений о работе и корпоративных страниц карьеры, включая Monster, Linkedin, Glassdoor, Angel и Naukri. Но в этой статье мы рассмотрим подходы к парсингу объявлений о работе на Indeed.

Какие данные о вакансиях можно спарсить с Indeed.com?

Любые данные, которые помогают сузить поиск работы до конкретной ниши и пересекаются с вашей деловой сферой, должны быть спарсены. Обычно собираются следующие данные:

  • Название вакансии
  • Дата публикации
  • Место работы
  • Нанимающая организация
  • Описание вакансии
  • Тип занятости
  • Базовая зарплата
  • Действительно до
  • URL вакансии
  • Источник вакансии

Почему парсить вакансии с Indeed?

Вы можете рассмотреть автоматизацию парсинга вакансий с Indeed для создания эффективных ETL-пайплайнов данных о вакансиях. Обычно варианты использования парсинга вакансий можно разделить на четыре вертикали:

  • Создание собственного сайта-агрегатора вакансий с узкой специализацией - хорошая идея для онлайн-бизнеса на неполный рабочий день.
  • Исследование рынка для отслеживания тенденций в отрасли и конкурентоспособности.
  • Поиск подходящих вакансий для отдельных лиц или групп.
  • Кроме того, команды по продажам услуг по аутсорсингу персонала и обучению персонала могут использовать это для генерации потенциальных клиентов для своих услуг.

Кто должен парсить вакансии на Indeed и как это сделать?

Компании, которым необходимо отслеживать или управлять несколькими тысячами вакансий на различных вертикалях индустрии, на досках объявлений и на страницах карьеры компаний, могут использовать автоматизированный парсинг вакансий. Люди с небольшими потребностями также могут создать свои собственные парсеры вакансий с или без технических навыков программирования. Как? Вакансии на Indeed можно парсить с помощью готовых решений для скрин-скрапинга, облачных решений для парсинга, собственных скриптов или коммерческих сервисов парсинга.

Что нужно для парсинга вакансий на Indeed?

Есть два способа получить данные о вакансиях:

  1. Использовать готовые решения для парсинга вакансий, которые предлагаются на рынке. Это может быть программное обеспечение или облачный сервис, который автоматически собирает информацию о вакансиях с Indeed.

  2. Создать собственный парсер вакансий с использованием программирования. Для этого необходимо иметь навыки в программировании и знание языка, такого как Python или JavaScript. С помощью программирования можно написать скрипт, который будет обращаться к веб-страницам Indeed, извлекать информацию о вакансиях и сохранять ее в нужном формате.

В обоих случаях необходимо иметь доступ к веб-страницам Indeed и использовать методы парсинга данных, такие как регулярные выражения или библиотеки для парсинга HTML или XML.

Найм парсера: фрилансера или агентства

Если структура веб-сайта Indeed не меняется постоянно, то стоит избегать создания внутренней команды парсеров, так как это затратное мероприятие. Рассмотрите фрилансеров, которые за $25 - $50 в час предлагают создание настраиваемых парсеров. Агентства предпочтительны для масштабных и быстрых проектов парсинга, а также если целевой веб-сайт является сложным и трудным для парсинга. Хорошие агентства начинают предлагать свои услуги от $50 в час.

В целом, оба подхода к найму являются эффективными, если у вас есть соответствующий бюджет.

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

Используйте инструмент для парсинга данных

Инструменты для парсинга данных на основе SaaS являются доступным и устойчивым вариантом для предприятий, у которых относительно умеренные потребности в парсинге данных. Эти инструменты позволяют предприятиям создавать логику парсинга визуально или использовать заранее созданные шаблоны для парсинга основных веб-сайтов. Стоимость использования таких инструментов является доступной, если провести должное исследование перед выбором эффективного коммерческого инструмента для парсинга данных. Согласно нашему исследованию, вы можете начать парсить данные о вакансиях с суммы всего $100 в месяц за 100 тысяч точек данных.

Основные шаги для создания парсера вакансий на Indeed

Шаг 1 — Определите требования к данным о вакансиях

На этом этапе вам нужно определить структуру базы данных о вакансиях. Решите, какие данные вам необходимы. Также определите, с какой периодичностью вам нужно парсить вакансии на Indeed.

Шаг 2 — Выберите методологию парсинга (внутренний, агентство или инструмент)

Исходя из ваших потребностей в данных, определите, какой подход к парсингу лучше всего подходит для ваших требований, а также бюджет на парсинг данных.

Шаг 3 — Настройка конвейера извлечения данных о вакансиях

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

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

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

Шаг 4 — Итеративное улучшение всего процесса, если возможно.

Иногда структура веб-сайта меняется, и скрипты для фокусированного парсинга нужно обновлять. Да, даже в случае настройки визуального парсинга.

Использование Octoparse для создания скрепера вакансий на Indeed

Теперь мы продемонстрируем, насколько легко "парсить список вакансий на Indeed" с помощью Octoparse. Давайте построим масштабируемый, автоматизированный скрепер вакансий на Indeed, шаг за шагом.

Метод 1: Парсинг вакансий на Indeed с использованием готовых шаблонов задач

Шаг 1: Начало работы с Octoparse

Если вы новичок в Octoparse,

  • Зарегистрируйтесь здесь и
  • Скачайте их программное обеспечение для автоматизации парсинга для Windows или Mac.
  • Установите его на свою систему и
  • Наконец, войдите, используя свои учетные данные.

Шаг 2: Использование готовых шаблонов задач Indeed

  • На главном экране вы найдете следующие две опции.
  • Задача в режиме расширенного режима предназначена для создания пользовательских парсинг-пайплайнов.

Для метода 1 демонстрации "Парсинг вакансий на Indeed" мы нажмем кнопку "Шаблоны задач + Задача".

  • Здесь показаны доступные готовые шаблоны для парсинга веб-сайтов. Для вашего удобства включен парсер вакансий Indeed.
Готовые шаблоны парсинга на Octoparse
  • Если готовые шаблоны не подходят, вы всегда можете создать свои парсеры. Мы продемонстрируем создание "пользовательского парсера вакансий Indeed" в методе 2.
  • Для метода с шаблонами задач нажмите на "Indeed", чтобы открыть "Шаблон парсинга вакансий Indeed" -
Использование готового шаблона парсера вакансий Indeed
  • Далее вы получаете три специальных шаблона для Indeed. Давайте выберем третий, чтобы спарсить вакансии в США.
Шаблоны парсинга Indeed
  • На следующем экране вы можете увидеть набор параметров, которые шаблон будет парсить.
Данные о вакансиях, которые будут спарсены с Indeed
  • Прокрутите вниз экрана, чтобы увидеть кнопку "использовать шаблон", нажмите на нее.
Завершение настройки шаблона парсера вакансий
  • Затем введите целевой URL в разделе "Введите URL-адреса" слева и нажмите кнопку "сохранить и запустить" внизу справа, чтобы начать "парсинг вакансий Indeed".
Сохранение и запуск парсера Indeed

Шаг 3: Запустите парсер вакансий с Indeed и экспортируйте данные

  • Когда вы нажимаете на "сохранить и запустить", решение для автоматизации парсинга Octoparse спрашивает, куда вы хотите сохранить данные. Вы можете "сохранить данные локально и в облаке".
Сохранение спарсенных данных с Indeed

Парсер начинает парсить данные, и вы можете визуально видеть данные на экране. Вы можете скачать спарсенные данные в формате JSON, CSV или XLS. Вот как выглядят спарсенные данные о вакансиях с Indeed:

Спарсенные данные о вакансиях с Indeed

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

Экспорт спарсенных данных о вакансиях

МЕТОД 2 — Пользовательский парсинг данных о вакансиях Indeed с помощью Octoparse

Шаг 1: Начало работы с Octoparse

Если вы новичок в Octoparse,

  • Зарегистрируйтесь здесь и
  • Скачайте их программное обеспечение для автоматизации парсинга для Windows или Mac.
  • Установите его на свою систему и
  • Наконец, войдите, используя свои учетные данные.

Шаг 2: Использование предварительно созданных шаблонов задач Indeed

  • На главном экране вы найдете следующие две опции.
  • Task Template предназначен для использования предварительно созданных шаблонов парсинга данных. Мы продемонстрировали это выше для "парсинга вакансий Indeed".

Для метода 2 "парсинга вакансий Indeed" мы нажмем кнопку "Расширенный режим + Задача".

Пользовательский парсинг вакансий Indeed
  • Это перенесет нас на экран, где мы можем ввести начальный URL целевого веб-сайта, с которого нам нужно парсить данные. В нашем случае это будет URL страницы "Indeed с вакансиями в больнице в Мельбурне" -

https://au.indeed.com/jobs?q=Hospital&l=Melbourne+VIC&sort=date

Вакансии в больнице в Мельбурне на Indeed
  • Внизу нажмите кнопку "Сохранить URL", чтобы перейти к экрану создания шаблона.
Сохранение начального URL парсера вакансий

Теперь мы создаем следующий поток -

  • Перейти на страницу списка вакансий и спарсить вакансии на странице 1
  • Повторить пагинацию

Шаг 3: Создание шаблона -

  • На стартовой странице (начальный URL indeed) прокрутите вниз и найдите ссылки на пагинацию. Запишите XPath для перехода на следующую страницу в пагинации -

//ul[@class=’pagination-list’]//*[contains(@aria-current,”true”)]/ancestor::li/following-sibling::li[1]/a/span

  • Нам также нужен XPath для ссылки на название вакансии. Используя инструменты разработчика Chrome, мы также записываем этот XPath -

//div[contains(@class,”jobsearch-SerpJobCard”)]/h2[contains(@class,”title”)]/a

  • Теперь щелкните по элементу пагинации, возможно, он автоматически выберет все элементы пагинации.
  • В помощнике справа выберите опцию "loop click single element".
Octoparse Pagination Setup for scraping Jobs
  • Это создаст поток пагинации в вашем шаблоне, как показано ниже -
Indeed Job Scraping Pagination
  • Затем щелкните по пагинации. Расширенные параметры отображаются в левой части экрана. Добавьте XPath для идентификации следующей ссылки пагинации, как показано ниже -

//ul[@class=’pagination-list’]//*[contains(@aria-current,”true”)]/ancestor::li/following-sibling::li[1]/a/span

indeed pagination using xpath
  • Нажмите ОК.
  • Теперь снова щелкните по квадрату пагинации. И в разделе с перечислением вакансий нажмите на "Название любой вакансии".
Job Posts Scraping Template Setup
  • Снова щелкните по любому из названий вакансий, а затем в помощнике советов по действиям выберите "loop click each element".
Selecting Multiple Job Posts to automate scraping
  • Снова в разделе расширенных параметров для этого элемента шаблона добавьте XPath, как мы делали ранее для пагинации -

//div[contains(@class,”jobsearch-SerpJobCard”)]/h2[contains(@class,”title”)]/a

  • Также добавьте задержку AJAX в 3 секунды или более. Это связано с тем, что детали вакансий загружаются с использованием AJAX и требуют некоторой задержки.
  • Затем выберите все точки данных из данных о вакансии. Для краткости демонстрации ограничимся пятью, как показано ниже -
Labelling Scraped Data from Indeed
  • Вы можете отредактировать метки уже на предыдущем экране или щелкнуть на элементе рабочего процесса и отредактировать их, как показано ниже -
labelling scraped data
  • Сохраните шаблон. Полный шаблон выглядит так -
Final Indeed Scraping Template In Octoparse

Шаг 4: Извлечение данных и их сохранение.

  • Нажмите кнопку "начать парсинг" в верхней части шаблона -
Saving the template before job data extraction
  • Выберите тип извлечения. Вы можете извлекать локально, в облаке или также можете создать API. Для нашей демонстрации мы нажимаем кнопку "Локальное извлечение" -
Local data Extraction, Cloud Data Extraction Using Octoparse
  • Как только вы нажмете "Локальное извлечение", начнется парсинг данных о вакансиях на Indeed. Ура!!!!!
  • Подождите, экспорт данных еще не завершен. Поэтому экран парсинга выглядит следующим образом. Обратите внимание на количество уже спарсенных страниц и извлекаемые данные.
Fourth Page Indeed Job Data Scraping
  • Парсинг продолжается, пока не будет достигнут конец списка вакансий или вы не нажмете кнопку "Стоп" внизу.
Stop Button
  • Теперь давайте нажмем на кнопку "Экспорт данных".

Octoparse предоставляет нам данные в различных форматах -

  • Мы нажали на JSON и сохранили данные в файле "HJM data.json". Открываем его локально с помощью Notepad -
JSON view of scraped job data

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

Заключение: парсинг вакансий Indeed

Парсинг данных о вакансиях с Indeed с помощью Octoparse - это проще простого. Как показано, для начала потребуется всего пять минут. Начать работу с Octoparse ЛЕГКО И БЕСПЛАТНО. Масштабирование с помощью Octoparse очень гибкое и доступное. Так что, на что вы ждете? Воплощайте свою потрясающую идею решения вакансий, которая у вас в голове. Если вам нужна помощь, я всегда рядом ;)

Для разработки пользовательского скрипта парсинга вакансий Indeed на Python свяжитесь со мной в Linkedin.