PyOdnoklassniki is Odnoklassniki REST API wrapper
This library consists of an API interface for Odnoklassniki and Django middleware which helps to configure it.
Usage example:
import pyodnoklassniki
pyodnoklassniki.app_pub_key = 'CBAJ...BABA'
pyodnoklassniki.app_secret_key = '123...XYZ'
ok_api = pyodnoklassniki.OdnoklassnikiAPI(
access_token='kjdhfldjfhgldsjhfglkdjfg9ds8fg0sdf8gsd8fg')
try:
print ok_api.users.getCurrentUser()
except pyodnoklassniki.OdnoklassnikiError as exc:
print exc
You might find that configuring library with Django Middleware is more convenient.
MIDDLEWARE_CLASSES = (
# ...
'pyodnoklassniki.contrib.django.middleware.PyOdnoklassnikiMiddleware',
# ...
)
PYODNOKLASSNIKI = {
'app_pub_key': 'CBAJ...BABA',
'app_secret_key': '123...XYZ',
}
Use dotted notation to invoke API method. Query parameters are passed as
keyword arguments. Odnoklassniki error codes are grouped by meaning in
exceptions.py
, but OdnoklassnikiError
might be enough.
See full list of API methods and error codes at Odnoklassniki API documentation.
try:
response = ok_api.group.getUserGroupsV2()
except pyodnoklassniki.OdnoklassnikiError as exc:
print exc
else:
for group in response['groups']:
print ok_api.group.getInfo(uids=group['groupId'],
fields='name, description')
You can process particular error code such as PARAM_SESSION_EXPIRED
as well.
from pyodnoklassniki import errors
try:
response = ok_api.users.getCurrentUser()
except pyodnoklassniki.AuthError as exc:
if exc.code == errors.PARAM_SESSION_EXPIRED:
# Renew session...
pass