История выпусков Уведомления о выпусках | Лента RSS
Эта версия
Загрузка файлов
Загрузите файл для вашей платформы. Если вы не уверены, какой выбрать, узнайте больше об установке пакетов.
Source Distribution
Uploaded 25 июн. 2022 г. source
Built Distribution
Uploaded 25 июн. 2022 г. py3
Хеши для vk_api-11.9.9.tar.gz
c7741e40bc05980c91ed94c84542e1e7e7370e101b5eaa74222958d4130fe3c2 | Копировать |
da25cd23b3315480aa6eb40e246b8411 | Копировать |
fc6cb696dcc8f10136f0c1afc98e37a267e46b63301e7f48ab5fc13065f0755f | Копировать |
Хеши для vk_api-11.9.9-py3-none-any.whl
c71021506449afe5b9bbb1c4acb0d86b35a007ddc21678478e46fbbeabd1f3ef | Копировать |
453fc6600135f7e8a88d4e8ee7b7f236 | Копировать |
55ff2298f424d7a7ef994e295a31911d47f23a6afdb9e880f10b2dc7a9998a8a | Копировать |
Помощь
О PyPI
Внесение вклада в PyPI
Использование PyPI
Разработано и поддерживается сообществом Python’а для сообщества Python’а.
Загрузка файлов vk api python
Пожертвуйте сегодня!
PyPI», «Python Package Index» и логотипы блоков являются зарегистрированными товарными знаками Python Software Foundation.
Источник: pypi.org
Python и LongPoll VK, или как запустить скрипт ВК и настроить Python, для новичков
Это новый вид статьи, в котором мы не будем говорить про PHP, многим python превосходит php, а для начинающих он покажется проще. Данная статья будет содержать в себе следующие шаги:
1. Установка Python 3.7.3 на Windows.
Установка не занимает много времени и умений. Переходим на официальный сайт https://www.python.org/downloads/ и скачиваем установщик себе на ПК.
Запускаем установщик, обязательно поставьте галочку возле надписи Add Python 3.7 to PATH, так у вас не возникнет проблем при работе с командной строкой Windows.
После установки запускаем командую строку:
И пишем команду:
Если Вы сделали все правильно, то увидите список команд и опций
3 API Вконтакте и Python 3: скачиваем видео
На этом установка Python успешно завершена. Переходим к установке IDE PyCharm
2. Установка PyCharm и его настройка.
Переходим на сайт jetbrains.com/pycharm и скачиваем среду PyCharm Community, она бесплатная.
После чего устаналвиваем и запускаем PyCharm
Забегая вперед, у меня по умолчанию в настройках программы стоял Python 2.7
Нам нужна последняя версия, открываем File -> Settings. -> Project interpreter и из выпадающего меню выбираем последнюю версию, или добавляем ее туда нажав на Show All…
Теперь можно создавать новый проект.
3. Создание проекта и установка библиотеки VK_API
В Pycharm выбираем: File -> New Project и создаем новый проект, выбрав необходимые настройки:
Теперь создаем новый файл, назовем его new.py, так как Python использует расширение .py (английскими буквами, не путайте) расширение указывать не обязательно.
Пишем наш первый самый простой код:
print(«Привет :)»)
И нажав правой кнопкой мыши по файлу, выбираем: Run ‘new’
Все работает. Теперь нам нужно установить библиотеку vk_api, для этого открываем терминал прямо в PyCharm и пишем команду:
pip install vk_api
Installing collected packages: urllib3, chardet, idna, certifi, requests, enum34, six, vk-api
Running setup.py install for vk-api … done
Successfully installed certifi-2019.6.16 chardet-3.0.4 enum34-1.1.6 idna-2.8 requests-2.22.0 six-1.12.0 urllib3-1.25.3 vk-api-11.4.0
Если в конце видите такой текст, библиотека успешно установлена, можно импортировать ее в проект и писать первый код:
# -*- coding: utf-8 -*- import vk_api from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType def main(): «»» Пример использования bots longpoll https://vk.com/dev/bots_longpoll «»» vk_session = vk_api.VkApi(token=’your_group_token’) longpoll = VkBotLongPoll(vk_session, ‘your_group_id’) for event in longpoll.listen(): if event.type == VkBotEventType.MESSAGE_NEW: print(‘Новое сообщение:’) print(‘Для меня от: ‘, end=») print(event.obj.from_id) print(‘Текст:’, event.obj.text) print() elif event.type == VkBotEventType.MESSAGE_REPLY: print(‘Новое сообщение:’) print(‘От меня для: ‘, end=») print(event.obj.peer_id) print(‘Текст:’, event.obj.text) print() elif event.type == VkBotEventType.MESSAGE_TYPING_STATE: print(‘Печатает ‘, end=») print(event.obj.from_id, end=’ ‘) print(‘для ‘, end=») print(event.obj.to_id) print() elif event.type == VkBotEventType.GROUP_JOIN: print(event.obj.user_id, end=’ ‘) print(‘Вступил в группу!’) print() elif event.type == VkBotEventType.GROUP_LEAVE: print(event.obj.user_id, end=’ ‘) print(‘Покинул группу!’) print() else: print(event.type) print() if __name__ == ‘__main__’: main()
Это код из примера, благодаря нему мы убедимся что сделали все правильно. Вставить его нужно в файл new.py предварительно удалив все оттуда, что мы написали ранее.
4. Запуск скрипта используя LongPoll VK.
Для начала настроим наше сообщество.
Создаем ключ
Копируем ключ и вставляем его в наш скрипт:
Вместо ‘your_group_token’ указываем ключ сообщества
Вместо ‘your_group_id’ указываем ID нашего сообщества
Теперь переходим во вкладку Long Poll APIи включаем его
Далее, обязательно включаем тип событий, это частая ошибка при создании ботов, забыв включить события, бот не будет работать! Выбираем все что есть.
Вернемся к нашему коду. Давайте запустим наш скрипт и проверим как он будем обрабатывать события, запускаем скрипт:
Давайте покинем сообщество и снова вступим в него:
В консоли мы сразу увидели последние события. Немного добавим строк в наш код, и научим отвечать наше сообщество сообщением в ЛС на одно из событий:
from vk_api.utils import get_random_id
longpoll = VkBotLongPoll(vk_session, ‘176771278’)
vk = vk_session.get_api()
И отправляем сообщение самому пользователю:
vk.messages.send( user_id=event.obj.from_id, random_id=get_random_id(), message=(«Новое сообщение — «, event.obj.text) ) print(‘ok’)
# -*- coding: utf-8 -*- import vk_api from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType from vk_api.utils import get_random_id def main(): «»» Пример использования bots longpoll https://vk.com/dev/bots_longpoll «»» vk_session = vk_api.VkApi(token=’Ттут ваш токен’) longpoll = VkBotLongPoll(vk_session, ‘Ид сообщества’) vk = vk_session.get_api() for event in longpoll.listen(): if event.type == VkBotEventType.MESSAGE_NEW: print(‘Новое сообщение:’) print(‘Для меня от: ‘, end=») print(event.obj.from_id) print(‘Текст:’, event.obj.text) print() vk.messages.send( user_id=event.obj.from_id, random_id=get_random_id(), message=(«Новое сообщение — » + event.obj.text) ) print(‘ok’) elif event.type == VkBotEventType.MESSAGE_REPLY: print(‘Новое сообщение:’) print(‘От меня для: ‘, end=») print(event.obj.peer_id) print(‘Текст:’, event.obj.text) print() elif event.type == VkBotEventType.MESSAGE_TYPING_STATE: print(‘Печатает ‘, end=») print(event.obj.from_id, end=’ ‘) print(‘для ‘, end=») print(event.obj.to_id) print() elif event.type == VkBotEventType.GROUP_JOIN: print(event.obj.user_id, end=’ ‘) print(‘Вступил в группу!’) print() elif event.type == VkBotEventType.GROUP_LEAVE: print(event.obj.user_id, end=’ ‘) print(‘Покинул группу!’) print() else: print(event.type) print() if __name__ == ‘__main__’: main()
напишем любое сообщение нашему боту и получим ответ:
Как узнать названия других событий? Они будут выводится в консоли, так как в коде используется:
else: print(event.type) print()
Тут мы получили 2 события:
VkBotEventType.WALL_POST_NEW — Новый пост
VkBotEventType.GROUP_OFFICERS_EDIT — Выдача админ прав в самой группе
Документация и больше примеров можно посмотреть на GitHub . Если Вам интересен этот язык и вы хотите видеть больше статей по Python, пишите в комментарии об этом!
5. Разница между CallBack API и LongPoll
Разработка ботов на заказ, любой сложности, обращаться:
VK Дмитрий Котов, Сергей Котов mail: [email protected]
- Сергей Котов
- 29.06.2019
- 37 873
- 12
- 14
Как создать образ с Windows 7/10 USB DVD Download Tool / Media Creation Tool
25-12-2018, 16:50, Статьи / Программы
Динамическая обложка для группы ВК, последний подписчик, топ комментатор и прочее
19-03-2019, 17:23, Статьи / PHP
Настройка своей VDS на Debian (8) под сайт
17-09-2019, 12:07, Статьи
Создаем собственного бота VK, подробная инструкция как создать бота VK за 5 минут!
16-01-2019, 06:02, Статьи / PHP
Разработка ботов на заказ, любой сложности, обращаться:
VK KOTOFF.net — Сообщество, в личные сообщения или по контактам указанным там
mail: [email protected]
Источник: kotoff.net
Основы работы с API Вконтакте на Python 3
Не смотря на то, что Python вышел на 1-е место для обучения программированию в университетах США, в российском сегменте всемирной паутины найти новую статью по Python, особенно 3 версии, практически невозможно( В основном все более-менее грамотные статьи исключительно на Хабре). Библиотека для питона поддерживающая API ВК существует около 2х лет, но найти подробную статью мне так и не удалось. Постараюсь исправить это недоразумение, если заинтересовал — приглашаю под кат.
Начнём с самого главного — с установки
Для удобства работы с API создадим ВК-приложение
Открываем VK, переходим на вкладку «приложения», заходим во вкладку «управление» и нажимаем кнопку «создать приложение»
.
Для работы нам понадобится ID приложения, его можно найти во вкладке «настройки».
Напишем простейший «Hello, world»
import vk vkapi = vk.API(‘my_app_id’, ‘user_login’, ‘user_password’) vkapi.access_token=s vkapi.wall.post(message=»Hello, world»)
Теперь разберём код построчно:
import vk
подключаем модуль vk
vkapi = vk.API(‘my_app_id’, ‘user_login’, ‘user_password’)
выполняем вход ВК
vkapi.access_token=s
это самое интересное, для работы со стеной вк, приложение должно иметь права wall.О том как их получить подробно написанно здесь. Чтобы наше приложение заработало, скопируйте полученный access_token в строчку s
vkapi.wall.post(message=»Hello, world»)
в результате выполнения этого кода, на вашей стене появится надпись Hello, world
Примеры
Приведу ещё несколько примеров. Часть из них размещена на странице модуля.
profiles = vkapi.users.get(user_id=1) print(profiles[0][‘first_name’]+’ ‘+profiles[0][‘last_name’])
Получаем фамилию и имя пользователя с указанным ID.
s=vkapi.wall.get(domain=’apiclub’,count=1)
Получаем записи со стены сообщества Вконтакте API в количестве одной штуки.
В заключение приведу несколько полезных ссылок:
Источник: habr.com