Skip to main content

Django implementation for vkontakte API Board

Project description

Django Vkontakte Board [![Build Status](https://travis-ci.org/ramusus/django-vkontakte-board.png?branch=master)](https://travis-ci.org/ramusus/django-vkontakte-board) [![Coverage Status](https://coveralls.io/repos/ramusus/django-vkontakte-board/badge.png?branch=master)](https://coveralls.io/r/ramusus/django-vkontakte-board)
======================

Приложение позволяет взаимодействовать с дисскуссиями групп через Вконтакте API используя стандартные модели Django

Установка
---------

pip install django-vkontakte-board

В `settings.py` необходимо добавить:

INSTALLED_APPS = (
...
'oauth_tokens',
'vkontakte_api',
'vkontakte_groups',
'vkontakte_users',
'vkontakte_board',
)

# 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
--------------------

* [board.getTopics](http://vk.com/developers.php?oid=-1&p=board.getTopics) – возвращает список тем в обсуждениях указанной группы;
* [board.getComments](http://vk.com/developers.php?oid=-1&p=board.getComments) – возвращает список сообщений в указанной теме;

Примеры использования
---------------------

### Получение дискуссий группы через метод группы

>>> from vkontakte_groups.models import Group
>>> group = Group.remote.fetch(ids=[16297716])[0]
>>> group.fetch_topics()
[<Topic: ЭСТАФЕТА ОЛИМПИЙСКОГО ОГНЯ ► задаем вопросы в этой теме>,
<Topic: ПРОМО-АКЦИЯ "ВСТРЕЧАЙ НОВЫЙ ГОД С ПРИЗАМИ! СОБЕРИ ТЁПЛУЮ КОМПАНИЮ МИШЕК!" ► вопросы и обсуждение>,
'...(remaining elements truncated)...']

Дискуссии группы доступны через менеджер

>>> group.topics.count()
12

### Получение дискуссий группы через менеджер

>>> from vkontakte_board.models import Topic
>>> Topic.remote.fetch(group=group, all=True)
[<Topic: ЭСТАФЕТА ОЛИМПИЙСКОГО ОГНЯ ► задаем вопросы в этой теме>,
<Topic: ПРОМО-АКЦИЯ "ВСТРЕЧАЙ НОВЫЙ ГОД С ПРИЗАМИ! СОБЕРИ ТЁПЛУЮ КОМПАНИЮ МИШЕК!" ► вопросы и обсуждение>,
'...(remaining elements truncated)...']

### Получение комментариев дискуссии через метод дискуссии

>>> from vkontakte_groups.models import Group
>>> from vkontakte_board.models import Topic
>>> group = Group.remote.fetch(ids=[16297716])[0]
>>> topic = Topic.remote.fetch(group=group, ids=[26523718])[0]
>>> topic.fetch_comments()
[<Comment: Comment object>,
<Comment: Comment object>,
'...(remaining elements truncated)...']

Комментарии дискуссии доступны через менеджер

>>> topic[0].comments.count()
39

### Получение комментариев дискуссии через менеджер

>>> from vkontakte_groups.models import Group
>>> from vkontakte_board.models import Topic, Comment
>>> group = Group.remote.fetch(ids=[16297716])[0]
>>> topic = Topic.remote.fetch(group=group, ids=[26523718])[0]
>>> Comment.remote.fetch(topic=topic)
[<Comment: Comment object>,
<Comment: Comment object>,
'...(remaining elements truncated)...']

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-vkontakte-board-0.3.7.tar.gz (28.3 kB view details)

Uploaded Source

File details

Details for the file django-vkontakte-board-0.3.7.tar.gz.

File metadata

File hashes

Hashes for django-vkontakte-board-0.3.7.tar.gz
Algorithm Hash digest
SHA256 55ae3d16d093c8655cd73c9c98dd6a2cb9a7534498e18d68dec149a2bf9ad6ae
MD5 ecccfb0e9161573d4c9f5db0a0af9be3
BLAKE2b-256 b7c79cb57904e20f75966bfe37f8565845bf937d557a19d157a2641768883af3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page