Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 11, 2017 18:42:38

onlu3
Зарегистрирован: 2017-08-11
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

Помогите, пожалуйста, исправить.
Ругается на 6 строку: vk.auth() NameError: name ‘vk’ is not defined

# -*- coding: utf-8 -*-
import time
import vk_api

vk_api.VkApi(token = 'e46f64.....7a9f')
vk.auth()
values = {'out': 0,'count': 100,'time_offset': 60}

def write_msg(user_id, s):
vk.method('messages.send', {'user_id':user_id,'message':s})

while True:
response = vk.method('messages.get', values)
if response['items']:
values['last_message_id'] = response['items'][0]['id']
for item in response['items']:
write_msg(item[u'user_id'],u'Привет!')
time.sleep(1)

Офлайн

#2 Авг. 11, 2017 19:16:35

kazaff
От:
Зарегистрирован: 2011-08-12
Сообщения: 26
Репутация: +  2  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

 vk_api.VkApi(token = 'e46f64.....7a9f')
vk.auth()
импортируется vk_api, а не vk



Офлайн

#3 Авг. 11, 2017 19:25:26

onlu3
Зарегистрирован: 2017-08-11
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

kazaff
если vk_api.auth()
то получаю ругань AttributeError: ‘module’ object has no attribute ‘auth’

Офлайн

#4 Авг. 11, 2017 19:33:46

kazaff
От:
Зарегистрирован: 2011-08-12
Сообщения: 26
Репутация: +  2  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

onlu3
если vk_api.auth()
то получаю ругань AttributeError: ‘module’ object has no attribute ‘auth’

Если я верно понял, то это этот модуль.

Тогда должно быть так:
 vk = vk_api.VkApi(token = 'e46f64.....7a9f')
vk.auth()

Там же на страничке с модулем есть примеры https://github.com/python273/vk_api/blob/master/examples/simple_example.py



Отредактировано kazaff (Авг. 11, 2017 19:34:48)

Офлайн

#5 Авг. 11, 2017 20:14:27

onlu3
Зарегистрирован: 2017-08-11
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

kazaff
Всё правильно, но
так я тоже уже пробовала и пример смотрела
 #vk_api.VkApi(login = '8908709879', password = '99900')
vk = vk_api.VkApi(token = 'e46f64ac......8357') 
vk.auth()
теперь выдает ещё плюсом ошибку входа
Traceback (most recent call last):
File “CUsers/���������/PycharmProjects/mybot/bot.py”, line 6, in <module>
vk.auth()
File “C:\Python27\lib\site-packages\vk_api\vk_api.py”, line 142, in auth
raise LoginRequired('Login is required to auth')
vk_api.exceptions.LoginRequired: Login is required to auth

Также я уже выяснила, что этот код работает только со страницей, а если для сообщества\группы то сразу выскакивает ошибка.

Офлайн

#6 Авг. 11, 2017 20:34:35

kazaff
От:
Зарегистрирован: 2011-08-12
Сообщения: 26
Репутация: +  2  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

У меня где-то был код, который скачивал из группы все картинки, постараюсь найти.

onlu3
Также я уже выяснила, что этот код работает только со страницей, а если для сообщества\группы то сразу выскакивает ошибка.
Скорее всего права заданы неверно.



Офлайн

#7 Авг. 11, 2017 20:48:21

onlu3
Зарегистрирован: 2017-08-11
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

kazaff
У меня где-то был код, который скачивал из группы все картинки, постараюсь найти.
Буду премного благодарна.
kazaff
Скорее всего права заданы неверно.
Да, надо будет посмотреть еще раз.

Офлайн

#8 Авг. 11, 2017 21:03:05

kazaff
От:
Зарегистрирован: 2011-08-12
Сообщения: 26
Репутация: +  2  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

 import vk_api
api_token = '8599...43f70'
vk_session = vk_api.VkApi(token=api_token)
try:
    vk_session.auth()
except vk_api.AuthError as error_msg:
    print(error_msg)
tools = vk_api.VkTools(vk_session)
wall = tools.get_all('wall.get', 100, {'owner_id': 1})
print('Posts count:', wall['count'])
if wall['count']:
    print('First post:', wall['items'][0], '\n')
if wall['count'] > 1:
    print('Last post:', wall['items'][-1])

Выше пример из документации. Работает.
Свой скрипт нашел, но он для другого модуля, который vk, а не vk_api.



Отредактировано kazaff (Авг. 11, 2017 21:03:24)

Офлайн

#9 Авг. 11, 2017 22:28:10

onlu3
Зарегистрирован: 2017-08-11
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

kazaff
Спасибо, действительно всё гуд.

Только один вопрос у меня теперь, как с ботом из этого кода взаимодействовать? Не совсем догоняю до этого.

Офлайн

#10 Авг. 12, 2017 09:45:38

kazaff
От:
Зарегистрирован: 2011-08-12
Сообщения: 26
Репутация: +  2  -
Профиль   Отправить e-mail  

Выдача ошибка при создании бота в вконтакте.

onlu3
https://github.com/python273/vk_api/blob/master/doc/VkTools.md
https://github.com/python273/vk_api/blob/master/vk_api/tools.py

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



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version