Skip to content

vamischenko/hh_go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HH.ru Vacancy Fetcher

Набор программ для получения вакансий с сайта hh.ru через публичный API с расширенной информацией.

Описание

Проект содержит три варианта программы для поиска различных PHP-вакансий:

  • main.go - поиск вакансий PHP (общий поиск)
  • teamlead.go - поиск вакансий PHP Team Lead
  • techlead.go - поиск вакансий PHP Tech Lead

Функционал

Программа:

  • Получает все доступные страницы результатов (не только первые 100 вакансий)
  • Выводит детальную информацию о каждой вакансии:
    • Название вакансии
    • Компанию-работодателя
    • Местоположение
    • Зарплату (если указана)
    • Контактную информацию (ФИО, email, телефоны - если доступна)
    • Ссылку на вакансию
  • Соблюдает лимиты API с задержками между запросами (200мс между страницами, 100мс между детальными запросами)

Требования

  • Go 1.21 или выше

Использование

Запуск основной программы (PHP вакансии)

# Без компиляции
go run main.go

# С компиляцией
go build -o hh-vacancies main.go
./hh-vacancies

Запуск для поиска Team Lead вакансий

# Без компиляции
go run teamlead.go

# С компиляцией
go build -o hh-teamlead teamlead.go
./hh-teamlead

Запуск для поиска Tech Lead вакансий

# Без компиляции
go run techlead.go

# С компиляцией
go build -o hh-techlead techlead.go
./hh-techlead

Формат вывода

Программа выводит информацию о вакансиях в следующем формате:

Найдено вакансий: X
Получено на первой странице: Y

Список вакансий:
================================================================================
1. Название вакансии
   Компания: Название компании
   Местоположение: Город
   Ссылка: https://hh.ru/vacancy/...
   Зарплата: от X до Y RUB (если указана)
   Контакты: (если доступны)
      ФИО: Имя Фамилия
      Email: email@example.com
      Телефон: +X (XXX) XXXXXXX

2. ...

Настройка

В каждом из файлов можно изменить параметры поиска:

  • searchText - поисковый запрос:
  • area в параметрах API - регион поиска (113 - Россия)
  • perPage - количество вакансий на страницу (максимум 100)

Технические детали

Структуры данных

Программа использует следующие структуры для работы с API:

  • Vacancy - базовая информация о вакансии
  • VacanciesResponse - ответ API со списком вакансий
  • VacancyDetails - детальная информация о вакансии (включая зарплату и контакты)

Функции

  • getVacancies(text, page, perPage) - получение списка вакансий
  • getVacancyDetails(vacancyID) - получение детальной информации о вакансии
  • printVacancy(counter, vacancy) - форматированный вывод вакансии

Ограничения API

Программа соблюдает ограничения API hh.ru:

  • Задержка 200мс между запросами страниц
  • Задержка 100мс между запросами детальной информации
  • Обязательный User-Agent заголовок

API

Программа использует публичный API hh.ru:

Документация API: https://github.com/hhru/api

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages