Pip install vk как установить

В этой статье воспользуемся замечательной библиотекой vk_api, которая позволяет взаимодействовать с сайтом Вконтакте средствами python . Чтобы получить список аудиозаписей со своей страницы , нам не нужно создавать приложение вконтакте , достаточно иметь свой логин и пароль

pip install vk_api

Еще необходимо будет установить библиотеку beautifulsoup4. Эта библиотека используется в модуле VkAudio библиотеки vk_api для парсинга

pip install beautifulsoup4

Напишем код , который авторизует нас в вконтакте , а потом получает все наши треки

import vk_api from vk_api.audio import VkAudio def main(): vk_session = vk_api.VkApi(‘Ваш логин’, ‘Ваш пароль’) try: vk_session.auth() except vk_api.AuthError as error_msg: # Если происходит исключение во время аутентификации, то выводим ошибку и выходи print(error_msg) return # Модуль для получения аудиозаписей без использования официального API. vkaudio = VkAudio(vk_session) for track in vkaudio.get_iter(): print(f»Исполнитель : «) print(f»Название трека : «) print(f»Ссылка на трек(url) : «) print(‘———————————————‘) if __name__ == ‘__main__’: main()

Скриншот выполнения программы

Как установить PIP для Python Windows? Установка библиотек в Python.

vk api python

Данная библиотека с помощью нескольких строчек кода позволяет нам авторизоваться на сайте и спарсить наши аудиозаписи.

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

import requests import re RE_LOGIN_HASH = re.compile(r’name=»lg_h» value=»([a-z0-9]+)»‘) login, password = ‘Ваш логин’, ‘Ваш пароль’ # Создаем сессию с исползованием библиотеки requests client_http = requests.Session() # Добавляем user_agents , эмулируя поведение браузера client_http.headers.update(< ‘User-agent’: ‘Mozilla/5.0 (Windows NT 6.1; rv:52.0) ‘ ‘Gecko/20100101 Firefox/52.0’ >) # Выполняем запрос к сайту , чтобы получить cookies response = client_http.get(‘https://vk.com/’) values = < ‘act’: ‘login’, ‘role’: ‘al_frame’, ‘_origin’: ‘https://vk.com’, ‘utf8’: ‘1’, ’email’: login, ‘pass’: password, ‘lg_h’: search_re(RE_LOGIN_HASH, response.text) ># Отправляем post запрос с нашим логином и паролем. response = client_http.post(‘https://login.vk.com/’, values) #Смотрим ответ print(response.text) #Далее мы должны написать много кода , на случай если используется двухфакторная авторизация # на случай неудачного ввода данных и все такое. Все это за нас написали разработчики данной библиотеки

Еще по теме:  Как удалить контакт в самсунге

Это упрощенный код для авторизации, чтобы показать как происходит авторизация с помощью библиотеки requests. А с помощью библиотеки vk_api авторизацию можно сделать всего лишь тремя строчками

import vk_api vk_session = vk_api.VkApi(‘Ваш логин’, ‘Ваш пароль’) vk_session.auth()

И при том эти три строчки за кулисами делают очень много вещей , такие как обработка ошибок , сохранение кукис , различные варианты авторизации(по токену или по логинуи паролю).

Как установить pip для python на Windows, Linux, Mac OS

А с помощью еще трек строчек кода , мы получаем все наши аудиозаписи

vkaudio = VkAudio(vk_session) for track in vkaudio.get_iter(): print(track)

Загляните в исходники данных методой и классов в библиотеке vk_apiи вы увидите какие запросы к api вконтакте выполняются и как парсятся аудиозаписи. В частности в методе __init__ класса VkAudio выполняется запрос к api users.get для получения Id авторизованного пользователя. А в методе get_iter() в цикле выполняются post запросы для получения аудиозаписей

В данной статье был рассмотрен конкретный пример использования библиотеки vk_api , которая предоставляет кучу возвоможностей и с замечательными примерами , которые можно посмотреть в репозитории.В следующих статьях мы рассмотрим еще больше примеров

Источник: gadjimuradov.ru

Установка vk_api python

При установки vk_api на Ubuntu 16.04.5 LTS выдетает ошибка установки.

pip install vk_api Collecting vk_api Using cached https://files.pythonhosted.org/packages/ac/c6/7ab7b58b00c6b06af38ce244515e4c6ad6b8fae0c00d4931c63bcdc803f3/vk_api-11.0.0.tar.gz Complete output from command python setup.py egg_info: Traceback (most recent call last): File «», line 1, in File «/tmp/pip-install-a21j4lkr/vk-api/setup.py», line 16, in long_description = f.read() File «/usr/local/lib/python3.6/encodings/ascii.py», line 26, in decode return codecs.ascii_decode(input, self.errors)[0] UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe2 in position 193: ordinal not in range(128) —————————————- Command «python setup.py egg_info» failed with error code 1 in /tmp/pip-install-a21j4lkr/vk-api/

Еще по теме:  Как сделать список желаний на день рождения в ВК

Какие варианты ее устранить

Отслеживать

задан 16 сен 2018 в 12:42

6,323 4 4 золотых знака 24 24 серебряных знака 52 52 бронзовых знака

Источник: ru.stackoverflow.com

Простое использование vk_api Python

vk_api, библиотека для многих популярных языков, в том числе и python.
она нужна для работы с данными в беседах, личке, группах, профиле и тд.

для начала установим данную библиотеку. pip install vk_api

импортируем ее: import vk_api

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

для работы бота, нам нужно: токен группы и id группы.

токен можно получить в группе->Управление->Работа с API->последняя вкладка Long Poll API, проверяем чтобы он был включен.
возвращаемся в Ключи доступа, там создать ключи, выбираем нужные нам функции.
обязательно выберите 2 пункт, Разрешить приложению доступ к сообщениям сообщества.
Создаете.

ну а далее все как обычно, делаю простой код и объясняю в нем же.

Снимок.PNG

работа бота:

Далее рассмотрим смену статуса с помощью vk_api.

import requests import datetime import time #подключаем все нужные библиотеки token = «» #ваш токен (страницы в вк) timeKD = 30 #время смены статуса (каждые n секунд) в данном случае каждые 30 def startStatus(): #функция смены статуса getCountry = requests.get(«https://api.vk.com/method/account.getProfileInfo?v=5.95.format(token)) #получаем город из страницы в вк getCountry = getCountry.json() getCountry = getCountry[«response»] getCountry = getCountry[«city»] city = getCountry[«title»] #преобразуем его в переменную city url = «http://api.openweathermap.org/data/2.5/weather» #url сайта с погодой, с которого будем получать погоду по городу из вк. parameters = < ‘q’: city, ‘appid’: «778d98cf94b6609bec655b872f24b907», ‘units’:’metric’, ‘lang’ : ‘en’>#параметры для запроса res = requests.get(url, params = parameters) #запрос data = res.json() #конвертируем в json today = datetime.datetime.today() nowT = (int(today.strftime(‘%H’))) #текущий час nowTs = str(nowT) + ‘:’ + today.strftime(‘%M’) #текущие минуты nowDate = today.strftime(«%d.%m.%Y») #конвертируем дату в одну переменную if int(data[‘main’][‘temp’]) 0 < 15: t = ‘☁’ elif int(data[‘main’][‘temp’]) >= 20: t = ‘☀’ elif int(data[‘main’][‘temp’]) >= 15 < 20: t = ‘?’ #сверх условия ака получение стикера для погоды XDD statusSave = («Time: | Date: | Weather in »: ℃».format(nowTs, nowDate, data[«name»], str(data[«main»][«temp»])) + t) #сохраняем статус в одну переменную statusOut = «https://api.vk.com/method/status.set?text=» + str(statusSave) + «access_token=» + token #конечная ссылка на замену статуса с помощью метода в вк апи status.set print(str(statusOut)) #выводим в консоль статус который вы поставили print(«Статус был обновлён») #пишем что он был обновлен return requests.get(str(statusOut)) # заменяем статус. while True: #бесконечный цикл startStatus() time.sleep(timeKD) #задержка на обновление статуса.

Еще по теме:  Что значит в Вконтакте время сессии истекло

далее посмотрим на смену аватарки через вк_апи.

import vk_api #опять импортируем вк апи token = «токен вашей страницы» vk_session = vk_api.VkApi(login = ‘ваш логин’, password=»ваш пароль», token=token) vk = vk_session.get_api() photos = vk.photos.get(count = 1, album_id = ‘profile’, rev = 1) #получаем последнюю фотографию if photos [‘items’]: photo_id = response_ph[‘items’][0] #id последней фотографии ph_response_delete = vk.photos.delete(photo_id = photo_id[‘id’]) #удаляем последнюю фотку upload = vk_api.VkUpload(vk_session) #загружаем фото photo = upload.photo_profile(‘название фотки на пк (photo.jpg)’) #обновляем фото на странице в вк response = vk.wall.get(count = 1) # получаем 1 запись со стены if response [‘items’]: post = response[‘items’][0] post_response_delete = vk.wall.delete(post_id = post[‘id’]) #и опять удаляем фото, чтобы не засирать себе страницу

С помощью данных «гайдов», можно провернуть прикольные вещи, например анимационная аватарка в вк, статус содержащий в себе что-то важное для вас или бота для вашей группы.
Всем удачи!

Источник: yougame.biz

Рейтинг
( Пока оценок нет )
Загрузка ...