Skip to content

deviur/vk_api_example

Repository files navigation

vk_api_example

ПРИМЕРЫ РАБОТЫ С VK API

Простые примеры использования VK API на языке программирования Python 3.5:

  • main.py - поиск групп в городе по ключевому запросу. Параметы задаются внутри кода. Авторизация происходит через access_token, который необходимо предварительно получить вручную.
  • auth_vk.py - пример авторизации в VK API по логину и паролю. Пароль запрашивается только в том случае, если не удалось подключиться по сохранённому в текстовом файле access_token-у. access_token получается автоматически.

В примерах используется библиотека vk. Её нужно установить перед запуском примеров с помощью комманды: pip3 install vk --user

main.py

Пример использования VK API для поиска групп в городе по ключевому запросу. Результат выводится в файлы csv.

ПАРАМЕТРЫ ДЛЯ ПРОГРАММЫ (задаются внутри кода):

  • access_token - нужно предварительно запросить. Ниже указан запрос, который нужно вставить в адресную строку браузера;
  • v - версия VK API;
  • keyword_city - ключевое слово для города, в котором требуется найти группы;
  • keywords_groups - ключевые слова, по которым требуется найти группы;

МЕТОДЫ VK API:

  • database.getCities - https://vk.com/dev/database.getCities (Используется для получения списка городов по ключевому слову);
  • groups.search - https://vk.com/dev/groups.search (Используется для получения списка id групп соответствующих запросу.; Группы сортируются по отношению дневной посещаемости к количеству пользователей.)
  • groups.getById - https://vk.com/dev/groups.getById (Используется для получения дополнительной информации из групп).

ПОЛУЧЕНИЕ КЛЮЧА ДОСТУПА ВРУЧНУЮ

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

Вам нужно вставить в адресную строку браузера следующую строчку: https://oauth.vk.com/authorize?client_id=6478436&display=page&redirect_uri=https://oauth.vk.com/blank.html&scope=friends&response_type=token&v=5.95

В ответ, в адресной строке браузера, вы получите строчку следующего вида: https://oauth.vk.com/blank.html#access_token=e441e9471da7f6830508501a44fbc7f15db8f97fdd0d41b2c8ac006310fd74ddba6ed5e2effae43e0ea93&expires_in=86400&user_id=133147577,

где уникальный набор символов "e441e9471da7f6830508501a44fbc7f15db8f97fdd0d41b2c8ac006310fd74ddba6ed5e2effae43e0ea93" будет вашим ключом доступа.

С более подробной информацией о получении ключа доступа можно оснакомиться в документации: https://vk.com/dev/implicit_flow_user

Запуск программы: python3 main.py

С более подробным описанием можно ознакомиться на сайте https://denislepeshkin.ru/primer-ispolzovaniya-vk-api-v-python/


auth_vk.py

Пример использования VK API для авторизации с помощью логина и пароля. После первой авторизации приложение сохраняет полученный access_token в текстовом файле auth_vk.ini, и последующие авторизации проиходят с помощью этого access_token.

Данный файл предполагается использовать в качестве модуля для последующих примеров, если в них будет требоваться авторизация. Подключить модуль можно с помощью инструкции import auth_vk.

ФУНКЦИИ МОДУЛЯ:

  • auth_vk_token() - авторизация с помощью сохранённого access_token-а;
  • auth_vk_password() - авторизация с помощью логина и пароля. Данная функция вызывается из auth_vk_token(), в случае, если с помощью access_token-а авторизация не удалась.

В случае запуска с помощью командной строки python3 auth_vk.py программа выдаёт сообщение об успешной или неуспешной авторизации.


getCity_vk.py

Пример обращения к базе данных ВК через VK API. Программа использует предыдущий пример auth_vk.py в качестве модуля для авторизации в ВК.

Программа просто выводит список городов в базе данных ВК по ключевому слову (keyword). Если ключевое слово не задано, то выдаётся список по ключевому слову "Балашиха".

Запуск программы: python3 getCity_vk.py "keyword"


getFriends.py

Это простой пример получения списка друзей из ВК используя API.

Этот файл можно использовать в качестве модуля. В этом случае становятся доступными два медода:

  • def get_friends(user_id) - получение друзей пользователя user_id
  • def get_friends_from(user_id, city_id) - получение друзей пользователя user_id из города city_id.

Запуск программы: python3 getFriends.py [user_id] user_id - это user_id пользователя, для которого необходимо получить список друзей. По умолчанию 0.

Программа возвращает первый 5000 друзей из списка пользователя.


getMembers.py

Простой пример получения списка подписчиков группы ВК используя API.

Может использоваться в качестве модуля для других примеров. В этом случае доступно несколько методов.

  • def get_members(group_id, fil="") - возвращает первую 1000 подписчиков группы group_id.
  • def get_all_members(group_id) - возвращает всех подписчиков группы group_id.
  • def get_all_members_3(group_id) - возвращает всех подписчиков группы group_id с указанием их городов.
  • def get_all_members_from(group_id, city_id) - возвращает всех подписчиков группы group_id из города city_id.

Запуск программы: python3 getMembers.py [group_id] group_id - это group_id группы, для которого необходимо получить список подписчиков. По умолчанию group_id = '157262974' # ID группы попечителей Школы Граня.


MakeListToSend.py

Пример построения списка в формате html-файла для отправки сообщений друзьям.

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

Запуск программы: python3 MakeListToSend.py > result.html


MakeListToSend2.py

Пример построения списка в формате csv-файла для отправки сообщений друзьям.

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

Запуск программы: python3 MakeListToSend 2.py > result.csv

About

ПРИМЕР РАБОТЫ С VK API

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages