Найти тему
Я.Соискатель

Бесплатное автоматическое обновление резюме для тех, кто не боится программировать (совсем немножко). API hh.ru.

Оглавление

Добрый день, дорогие соискатели.

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

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

Итак, к делу.

Какие знания и ресурсы потребуются

1. Понимание, как работает хостинг сайтов. Хотя бы на уровне чайника.

2. Собственно, сам хостинг с поддержкой php и cron. Это стоит копейки, места нужно совсем мало. Можно купить самый дешевый тариф на 100 руб. в месяц. Например на 1gb.ru. Платный домен нам не понадобится, вполне хватит технического.

Знать программирование не обязательно, можете просто использовать мой код.

Я тоже не большой специалист в php, так что прошу больно не бить, если что...

У сервиса hh.ru есть замечательный api, который позволяет очень многое делать программно, в том числе обновлять резюме. Почему бы нам не использовать эту возможность.

Алгоритм действий

1. Напишем php-программку, которая будет обновлять все наши резюме.

2. Разместим php-файл на сайте.

3. Настроим запуск по расписанию каждые 4 часа.

Чаще смысла не имеет, api будет ругаться, что так часто нельзя и ничего не обновит.

PHP-код

<?php

function my_curl($url, $cookiefile = 'cookie.txt', $headers = null) {

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

$userAgent = 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0';

curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);

curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiefile);

curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

if ($headers){

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

}

$html = curl_exec($ch);

curl_close($ch);

return $html;

}

function update_resume($token) {

$headers = array("Authorization: Bearer $token", 'User-Agent: Masterpro');

// Загружаем страницу соискателя, чтобы вывести его имя

$me = json_decode(my_curl('https://api.hh.ru/me', 'a', $headers));

echo "<h2>$me->last_name $me->first_name</h2>";

// Загружаем список резюме

$resumes = json_decode(my_curl('https://api.hh.ru/resumes/mine', 'a', $headers));

echo '<strong>Статус обновлений резюме:</strong></br>';

// Обходим список резюме и обновляем каждое

foreach ($resumes->{'items'} as $item) {

if ($curl = curl_init()) {

curl_setopt($curl, CURLOPT_URL, 'https://api.hh.ru/resumes/' . $item->id . '/publish');

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curl, CURLOPT_POST, true);

curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$out = curl_exec($curl);

curl_close($curl);

}

// Выводим результаты на страницу

if (empty($out)) {

echo 'Резюме ' . '<font color = grean>"' . $item->title . '"</font>' . ' успешно обновлено.</br>';

} else {

echo 'Резюме ' . '<font color = red>"' . $item->title . '"</font>' . ' не было обновлено. Ошибка: "' . json_decode($out)->description . '". Дата предыдущего обновления: ' . ($item->updated . '.</br>');

}

}

}

update_resume('M10CCK53EGHRKB0DA6IHJ9JCU6AUKG9UJI2HU83L05D5U71FFUF8NC7A314V7F5T');

// Здесь вместо M10CCK53... нужно подставить Ваш токен.

Токен

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

Самый простой способ его получить - зайти на страницу https://dev.hh.ru/admin, авторизоваться свои логином и паролем от hh.ru.

Затем нажать "Запросить токен" (вторая кнопка, которая только для себя). Посмотрите на картинке:

-2

После нажатия на экране появится длинная строчка абракадабры. По этой строчке api будет Вас узнавать. Скопируйте в ставьте в последнюю строчку кода в php-файле вместо моего старого токена, который " M10CCK53... ".

Важно! Бережно храните токен! Если он попадет в руки злоумышленнику, он сможет получить доступ к Вашему личному кабинету на hh.ru со всеми вытекающими последствиями!

Я не прячу свой токен, так как он уже просрочен и им воспользоваться уже нельзя. Токен полученный описанным выше способом, живет 2 недели. После этого нужно будет получить новый токен и обновить php-файл.

Итак, программа написана, размещена на сайте. Теперь попробуйте открыть соответствующую страницу вручную. Если все получилось, настройте вызов этой страницы в cron c интервалом 4 часа (или чуть больше, иногда запуск ровно через 4 часа все же вызывает ошибку).

Удачи в поиске работы!