{"id":15017647,"url":"https://github.com/ar4ikov/vk_advanced_api","last_synced_at":"2026-03-08T14:38:43.189Z","repository":{"id":62587664,"uuid":"124926020","full_name":"Ar4ikov/vk_advanced_api","owner":"Ar4ikov","description":"A very simple to use API Wrapper for Vkontakte (VK) on Python.","archived":false,"fork":false,"pushed_at":"2021-10-08T11:20:15.000Z","size":98,"stargazers_count":8,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-04-26T23:20:53.217Z","etag":null,"topics":["api","bot","opensource","polling","python","rucaptcha","vk","vk-api","vk-bot","vk-bot-python","vk-python","wrapper"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ar4ikov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-03-12T17:27:55.000Z","updated_at":"2023-09-19T04:09:12.000Z","dependencies_parsed_at":"2022-11-03T17:48:01.810Z","dependency_job_id":null,"html_url":"https://github.com/Ar4ikov/vk_advanced_api","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ar4ikov%2Fvk_advanced_api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ar4ikov%2Fvk_advanced_api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ar4ikov%2Fvk_advanced_api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ar4ikov%2Fvk_advanced_api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ar4ikov","download_url":"https://codeload.github.com/Ar4ikov/vk_advanced_api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248566777,"owners_count":21125721,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","bot","opensource","polling","python","rucaptcha","vk","vk-api","vk-bot","vk-bot-python","vk-python","wrapper"],"created_at":"2024-09-24T19:50:47.888Z","updated_at":"2026-03-08T14:38:43.139Z","avatar_url":"https://github.com/Ar4ikov.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# VK Advanced API\n\n### Поддержка приостановлена!\n\u003e Весь контент, изложенный в этом репозитории, не является актуальным, автор прекращает поддержку работы и обновления функционала, а также более не несет ответственности за корректность работы приложения.\n---\n\nИнтересная штука то получается. Вроде всех этих open-source либ много, но все они\nкакие-то недоработанные :rage:\n\nИменно так я решил.\nРешил и сделал :relaxed:\n\nVK Advanced API предоставляет возможность в полной мере насладиться всеми\nфичами API ВК, которое оно само предоставить не может.\n\nЗдесь вы увидите:\n- Авторизация с помощью Логина и Пароля пользователя, а не только токена\n- Улучшение работы некоторых методов и их группирование в один полноценно рабочий метод\n- Улучшенный polling эвентов\n- Новый тип эвентов - Notifications Events (название авторское)\n- Обработку капчи с помощью сервиса RuCaptcha\n- Кастомную обработку ошибок\n- Качественную и быструю работу\n- Гибкую настройку под все нужды\n\nЭто и не только вы сможете увидеть тут!\n\n---\n### Установка\n\nОчень простая и удобная установка!\n\n**Возможны некоторые ошибки при установке (так уж собрался пакет, что необходимые модули ставяться в конце)**\n\n**Чтобы их избежать, следуйте инструкции ниже**\n\nВыполните следующие команды в вашей консоли\n```shell\npip install requests\npip install parsel\npip install captcha_solver\npip install pymitter\npip install lxml\n```\n\nИ установите сам модуль\n```shell\npip install vk_advanced_api\n```\n\nЕсли хотите установить определенную версию, используйте `==version`, где\nversion - желаемая версия\n```shell\npip install vk_advanced_api==1.3.1\n```\nЧтобы обновить модуль, напишите параметр `--upgrade`, установится последнаяя стабильная версия\n```shell\npip install --upgrade vk_advanced_api\n```\n\n---\n### Авторизация\n\n(Все представленное здесь хорошо описано в директории examples)\n\nЧерез данные пользователя\n```python\n# Импорт модуля\nimport vk_advanced_api\n\n# Экземпляр класса VKAPI\napi = vk_advanced_api.VKAPI(\n    app_id='your-app-id',\n    login='help@ar4ikov.ru',\n    password='qwerty',\n    captcha_key='your-captcha-key',\n    version=5.71,\n    warn_level=1\n)\n```\nгде:\n- app_id - ID Вашего Standalone-приложения ([тут прочтите](http://vk.com/editapp?act=create))\n- login - Логин/Email/Телефон юзера\n- password - Пароль юзера\n- captcha_key - API Ключ к вашему аккаунту на RuCaptcha\n- version - Желаемая версия API VK\n- warn_level - Уровень лога ошибок, где 1 - вывод в консоль, 2 - вызов ошибок (raise)\n\nПри данном типе авторизации будет получен Access Token юзера, так что вы всегда \nсможете получить его\n```python\naccess_token = api.access_token\n```\n\nЧерез токен\n```python\n# Импортируем модуль\nimport vk_advanced_api\n\n# Создаем экземпляр класса VKAPI\napi = vk_advanced_api.VKAPI(\n    access_token='Your-Access-Token',\n    captcha_key='your-captcha-key',\n    version=5.71,\n    warn_level=1\n)\n```\nгде:\n- access_token - Access Token юзера\n\n---\n### Вызов методов\n\n(Все представленное здесь хорошо описано в директории examples)\n\nВсего в модифицированной версии есть пару методов, основную часть которых,\nконечно же, составляет само API Вконтактика.\n\nОдин из таких - `sendMessage`\n(В коде там поищите его описание, мне тут лень описывать это, ну серьезно)\n```python\n\n# Тут всё вроде понятно, кроме attachments\n# Он описан в examples/upload_media.py\n\napi.sendMessage(\n    user_id=1,\n    message='Привет, Дуров',\n    attachments=[]\n    )\n```\n\nЧтобы получить класс API, обратимся к ***utils***\n```python\n\u003e\u003e\u003e utils = api.utils\n```\nПосле попытаемся вызвать метод.\nТ.к. я постарался поиграться с \"магией\" Питона ( ***__getattr__*** и ***__call__*** ),\nто все методы можно получить просто как методы самой библиотеки. Те, кто знают, что\nможет ***__getattr__*** и ***__call__*** поймут меня.\n\n```python\n\u003e\u003e\u003e utils.messages.send(user_id=1, message='Привет, Дуров!')\n```\n\n(а это типо ответ API на ваш запрос)\n```shell\n364582\n```\n\nЗа подобную идею хочу отблагодарить человека [dimka665](https://github.com/dimka665) и его проект\n[vk](https://github.com/dimka665/vk)\n\n---\n### LongPolling и обработка эвентов\n\n(Все представленное здесь **полностью** описано в директории examples\nСказал же, что **ПОЛНОСТЬЮ**!)\n\nБолее подробно о технологии `LongPolling VK` читайте [тут](https://vk.com/dev/using_longpoll)\n\nМоя либа предоставляет возможность работать с обработанными эвентами, в частности\nнаправленные на помощь в создании чат-ботов\n\nНапример, вот вам эвент ***new_message***\n\nКлюч         | Что означает\n-------------|--------------------------------------------------------------\ntype         | Тип сообщения (public или private)\nmessage_id   | ID сообщения\ndate | Дата события по UNIX\nis_out       | Определяет, явзяется ли сообщение исходящим (True, если да)\nargs         | Аргументы (просто всё, что разделено пробелом), помогают при создании команд для чат-бота\nis_command   | Определяет, является ли сообщение командой (True, если да)\npeer_id      | ID диалога (диалогом может быть беседа или личный чат)\nfrom_id      | (только для бесед, вернет None, если личное сообщение) - ID пользователя, который отправил сообщение\nbody         | Тело эвента в нетронутом виде, которое поступило при запросе на Polling сервер VK\nis_acted     | (только для бесед, вернет False, если личное сообщение) - Позволяет определить, является ли этот эвент действием в беседе\nattachments  | Вложения\n\n\nИли вот вам описание ключа ***act*** в эвенте ***new_action***\n\nКлюч         | Что означает\n-------------|--------------------------------------------------------------\nact          | ID действия\nact_mid      | ID юзера, над которым совершили действие\nact_from     | ID юзера, который совершил действие\nact_text     | Текст, который был передан в действии (обычно новое название беседы)\n\nТакже существует особый тип эвентов - `Notifications Events`.\n\nПо своей сути данный тип эвентов является тем самым случаем, когда обычный метод становится возможностью получать\nвсе более свежую информацию. Данная функция - `уникальна` и встречается `только` в данной библиотеке.\n(За идею спасибо [ему](https://vk.com/enotakin))\n\n**Примечание**\n\n***Данный функционал находится в тестировании и возможно нуждается в правках.***\n\nНиже представлено описание ключей данного эвента -\u003e ***new_notification***\n\nКлюч         | Что означает\n-------------|--------------------------------------------------------------\nuser_id | ID пользователя, который совершил действие. Параметр `user_ids` не передается, если был передан текущий\nuser_ids | Список, содержащий ID пользователей, совершивших данное действие в один промежуток времени или там, где это необходимо. Параметр `user_id` в данном случае не передается\ntype | Тип действия, подробнее на https://vk.com/dev/notifications.get\ndate | Дата события по UNIX\nbody | Тело события (Для разных типов событий содержатся разные поля)\nparent_id | ID материала, к которому появился ответ\nparent | Информация о материале, к которому появился ответ\n\n(На самом деле я простот игрался с таблицами, красиво выглядят...)\n\n---\n### Заключение\n\nНе поймите меня неправильно, но я просто уже устал от того, что для многих понимания\n`простота` и `удобство` утратило свой смысл. Большинство существующих либ для работы\nс API Вконтакта либо слишком простые и засчёт этого мало чем отличаются от сырых\nзапросов, либо настолько накрученные, что рядовой юзер может потеряться во всем разнообразии вещей.\n\nЯ не поливаю их говном, это моё личное мнение.\nНО именно это мнение подтолкнуло сделать меня нечто подобное. :computer:\n\nЕстественно, либа будет обновляться, улучшаться.\nНа этом пока всё.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Far4ikov%2Fvk_advanced_api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Far4ikov%2Fvk_advanced_api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Far4ikov%2Fvk_advanced_api/lists"}