Skip to content

Instantly share code, notes, and snippets.

@Melevir
Created February 17, 2017 19:14
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Melevir/f20bbc80826a5e5e4a3d9ddb4e126ed6 to your computer and use it in GitHub Desktop.
Save Melevir/f20bbc80826a5e5e4a3d9ddb4e126ed6 to your computer and use it in GitHub Desktop.

Сегодня будем считать статистику по вакансиям разработчиков.

Это задание менее формализовано, чем предыдущее. Это сделано намеренно. Вопросы решай сам или спрашивай в чате.

  1. Получить доступ к АПИ Суперджоба ===================================

В качестве источника будем использовать superjob.ru, сайт с кучей вакансий.

У него есть АПИ, вот документация: https://api.superjob.ru

Надо на нём зарегистрироваться, получить ключ для доступа к АПИ и научиться делать авторизованные запросы из Питона.

К концу этого пункта у тебя должен быть способ делать запросы от имени своего приложения к АПИ.

В прошлом задании для хттп-запросов из Питона использовался стандартный urllib. Теперь ты умеешь устанавливать сторонние модули, поэтому бери requests.

Теоретическая справка: статья про HTTP на Википедии(из неё надо вынести, как в общем работает ХТТП и что такое методы), статьи про OAuth на Википедии и на Хабре.

  1. Собрать библиотеку релевантных вакансий ==========================================

Нас интересуют вакансии программистов в Москве. На выходе этого задания нужно получить скрипт, который сгенерирует файл с json-описанием сотни подходящих вакансий.

Тут стоит подумать о том, как искать эти вакансии: программистов могут называть разработчиками, например.

В АПИ есть нужный метод, отыщи его сам.

  1. Обработать вакансии ======================

Теперь надо обработать вакансии: убрать ненужные данные и вытащить нужные в более удобном виде.

Нужен скрипт, который принимает на вход файл из предыдущего пункта и генерирует другой json-файл. В нём от вакансии должны остаться только название, зарплата и требования к соискателю. Именно требования, никакого вступительного текста, условий работы и всяких бонусов.

  1. Составить рейтинг ====================

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

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

Как определить принадлежность вакансии к языку, придумай сам. Самый простой вариант – проверять вхождения ЯП в название и описание.

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

Усложение: если ты силён духом, можешь не ограничиваться выводом статистики в консоль, а сгенерировать картинку с гистограммой: по одной оси языки, по другой: средние зарплаты. Библиотеку для генерации этого поможет найти Гугл.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment