https://github.com/ramusus/django-vkontakte-polls
Django implementation for vkontakte API Polls
https://github.com/ramusus/django-vkontakte-polls
Last synced: 2 months ago
JSON representation
Django implementation for vkontakte API Polls
- Host: GitHub
- URL: https://github.com/ramusus/django-vkontakte-polls
- Owner: ramusus
- License: other
- Created: 2013-04-09T23:34:48.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2016-03-14T12:21:41.000Z (over 10 years ago)
- Last Synced: 2025-12-28T21:59:22.280Z (7 months ago)
- Language: Python
- Size: 43 KB
- Stars: 0
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Django Vkontakte Polls
======================
[](http://badge.fury.io/py/django-vkontakte-polls) [](https://travis-ci.org/ramusus/django-vkontakte-polls) [](https://coveralls.io/r/ramusus/django-vkontakte-polls
Приложение позволяет взаимодействовать с голосованиями групп через Вконтакте API используя стандартные модели Django
Установка
---------
pip install django-vkontakte-polls
В `settings.py` необходимо добавить:
INSTALLED_APPS = (
...
'oauth_tokens',
'taggit',
'vkontakte_api',
'vkontakte_places',
'vkontakte_groups',
'vkontakte_users',
'vkontakte_wall',
'vkontakte_polls',
'm2m_history',
)
# oauth-tokens settings
OAUTH_TOKENS_HISTORY = True # to keep in DB expired access tokens
OAUTH_TOKENS_VKONTAKTE_CLIENT_ID = '' # application ID
OAUTH_TOKENS_VKONTAKTE_CLIENT_SECRET = '' # application secret key
OAUTH_TOKENS_VKONTAKTE_SCOPE = ['ads,wall,photos,friends,stats'] # application scopes
OAUTH_TOKENS_VKONTAKTE_USERNAME = '' # user login
OAUTH_TOKENS_VKONTAKTE_PASSWORD = '' # user password
OAUTH_TOKENS_VKONTAKTE_PHONE_END = '' # last 4 digits of user mobile phone
Покрытие методов API
--------------------
* [polls.getById](http://vk.com/dev/polls.getById) – возвращает детальную информацию об опросе;
* [polls.getVoters](http://vk.com/dev/polls.getVoters) – получает список идентификаторов пользователей, которые выбрали определенные варианты ответа в опросе;
Использование парсера
---------------------
* Получение проголосовавших за ответ пользователей;
Примеры использования
---------------------
### Получение голосования
>>> from vkontakte_polls.models import Poll, Group, Post
>>> group = Group.remote.fetch(ids=[16297716])[0]
>>> post = Post.objects.create(remote_id='-16297716_190770', owner=group)
>>> poll = Poll.remote.fetch(83838453, group, post)
>>> poll.pk
83838453
>>> poll.question
А ты занимаешься спортом? (открытое голосование)
>>> poll.votes_count
2170
>>> poll.owner
>>> poll.created
datetime.datetime(2013, 4, 8, 12, 59, 2)
### Получение всех ответов голосования
>>> poll.answers.all()
[, , , , , , ]
>>> poll.answers.count()
7
>>> answer = poll.answers.all()[0]
>>> answer.pk
266067655L
>>> answer.text
Да, профессионально!
>>> answer.votes_count
581
>>> answer.rate
26.77
### Получение всех пользователей, проголосовавших за ответ
>>> answer.fetch_voters()
[, , , '...(remaining elements truncated)...']
>>> answer.voters.count()
581