×
Жесткие переговоры 2.0, в пику Владимиру Соловьеву. Пранк :) (17 мая 2017)

Разговор программиста и работодателя.

Вопрос API HeadHunter: скрипт для обновления резюме

Больше
3 мес. 2 дн. назад - 3 мес. 2 дн. назад #1 от Aleksej
Aleksej создал эту тему: API HeadHunter: скрипт для обновления резюме
Написанный на php простенький скрипт, позволяющий, тем не менее, одну невероятно удобную штуку, а именно: обновить все ваше резюме, сколько бы их не было на HeadHunter.ru - всего одним кликом мыши. Подробные комментарии - в блоге, см. статью API HeadHunter: скрипт для обновления резюме , ну а здесь код.

<?php
$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';

if (empty($_GET['code'])) {
    echo '<p><a href="https://hh.ru/oauth/authorize?response_type=code&client_id=' . $client_id . '">Обновить резюме</a></p>';
} else {
    if ($curl = curl_init()) {
        curl_setopt($curl, CURLOPT_URL, 'https://hh.ru/oauth/token');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&client_id=" . $client_id . "&client_secret=" . $client_secret . "&code=" . $_GET['code']);
        $out = curl_exec($curl);
        curl_close($curl);
    }
    $token_json = json_decode($out);
    $headers    = array(
        'Authorization: Bearer ' . $token_json->access_token,
        'User-Agent: Masterpro'
    );
    if ($curl = curl_init()) {
        curl_setopt($curl, CURLOPT_URL, 'https://api.hh.ru/resumes/mine');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        $out = curl_exec($curl);
        curl_close($curl);
    }
    $resumes = json_decode($out);
    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);
            echo $out;
            curl_close($curl);
        }
    }
}
Последнее редактирование: 3 мес. 2 дн. назад от Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
2 мес. 3 нед. назад #2 от russian_today
russian_today ответил в теме API HeadHunter: скрипт для обновления резюме
Как получить на страничке время последнего обновления резюме, не подскажете?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
2 мес. 3 нед. назад #3 от Aleksej
Aleksej ответил в теме API HeadHunter: скрипт для обновления резюме
ну, скажем...

<?php
$client_id = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$client_secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';

if (empty($_GET['code'])) {
    echo '<p><a href="https://hh.ru/oauth/authorize?response_type=code&client_id=' . $client_id . '">Обновить резюме</a></p>';
} else {
    if ($curl = curl_init()) {
        curl_setopt($curl, CURLOPT_URL, 'https://hh.ru/oauth/token');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_POSTFIELDS, "grant_type=authorization_code&client_id=" . $client_id . "&client_secret=" . $client_secret . "&code=" . $_GET['code']);
        $out = curl_exec($curl);
        curl_close($curl);
    }
    $token_json = json_decode($out);
    $headers    = array(
        'Authorization: Bearer ' . $token_json->access_token,
        'User-Agent: Masterpro'
    );
    if ($curl = curl_init()) {
        curl_setopt($curl, CURLOPT_URL, 'https://api.hh.ru/resumes/mine');
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        $out = curl_exec($curl);
        curl_close($curl);
    }
    $resumes = json_decode($out);
    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 'Резюме ' . '"' . $item->title . '"' . ' успешно обновлено.</br>';
            } else {
            echo $out . '</br>';
            echo 'Резюме ' . '"' . $item->title . '"' . ' было обновлено ' .($item->updated . '</br>');
        }
    }
}
}

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
1 мес. 3 нед. назад #4 от russian_today
russian_today ответил в теме API HeadHunter: скрипт для обновления резюме
Кракозябли отображаются.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
1 мес. 3 нед. назад - 1 мес. 3 нед. назад #5 от serge
serge ответил в теме API HeadHunter: скрипт для обновления резюме

russian_today пишет: Кракозябли отображаются.


кодировку пропиши. ;)

<META name="Content-Type" content="text/html; charset=utf-8">
<META http-equiv="Content-Type" content="text/html; charset=utf-8">

А я смогу! - А поглядим! - А я упрямый!
Последнее редактирование: 1 мес. 3 нед. назад от serge.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.