Django实现Vkontakte API用户
项目描述
Django Vkontakte Users
======================
[](http://badge.fury.io/py/django-vkontakte-users) [](https://travis-ci.org/ramusus/django-vkontakte-users) [](https://coveralls.io/r/ramusus/django-vkontakte-users)
此应用程序允许通过Vkontakte API使用标准Django模型与Vkontakte用户资料进行交互
安装
---------
pip install django-vkontakte-users
在 `settings.py` 中需要添加
INSTALLED_APPS = (
...
'oauth_tokens',
'taggit',
'vkontakte_api',
'vkontakte_places',
'vkontakte_users',
)
# oauth-tokens settings
OAUTH_TOKENS_HISTORY = True # 在数据库中保留已过期的访问令牌
OAUTH_TOKENS_VKONTAKTE_CLIENT_ID = '' # 应用程序ID
OAUTH_TOKENS_VKONTAKTE_CLIENT_SECRET = '' # 应用程序密钥
OAUTH_TOKENS_VKONTAKTE_SCOPE = ['ads,wall,photos,friends,stats'] # 应用程序作用域
OAUTH_TOKENS_VKONTAKTE_USERNAME = '' # 用户登录名
OAUTH_TOKENS_VKONTAKTE_PASSWORD = '' # 用户密码
OAUTH_TOKENS_VKONTAKTE_PHONE_END = '' # 用户手机号码最后四位
API方法覆盖
--------------------
* [users.get](http://vk.com/dev/users.get) - 返回用户扩展信息;
* [friends.get](http://vk.com/dev/friends.get) – 返回用户朋友列表ID;
* [likes.getList](http://vk.com/dev/likes.getList) – 返回添加对象到“我喜欢”列表的用户列表;
使用示例
---------------------
### 通过ID获取用户
>> 从 v kontakte_users.models 导入 User
>> User.remote.fetch(ids=[1,2,6])
[\<User: Павел Дуров>,
<User: Александра Владимирова>,
<User: Николай Дуров>]
### 通过页面地址获取用户
>> 从 v kontakte_users.models 导入 User
>> user = User.remote.get_by_slug('durov')
>> user
<User: Павел Дуров>
>> user.__dict__
{'_state': <django.db.models.base.ModelState at 0xb2eba8c>,
'about': u'Steve Dogs',
'activity': u'',
'albums': 3,
'audios': 111,
'bdate': u'10.10.1984',
'books': u'',
'city_id': 380,
'counters_updated': datetime.datetime(2012, 3, 14, 0, 13, 14, 819693),
'country_id': 160,
'facebook': u'',
'facebook_name': u'',
'faculty': 15,
'faculty_name': u'Филологический',
'fetched': datetime.datetime(2013, 2, 14, 15, 13, 46, 673793),
'first_name': u'Павел',
'followers': 3437985,
'friends': 524,
'friends_count': 0,
'games': u'',
'graduation': 2006,
'has_mobile': True,
'home_phone': u'',
'id': 2765,
'interests': u'',
'last_name': u'Дуров',
'livejournal': u'durov',
'mobile_phone': u'',
'movies': u"Flying Over Cuckoo's Nest, Rainman, Fight Club, Matrix, Equilibrium, Watchmen",
'mutual_friends': 0,
'notes': 6,
'photo': u'http://cs7003.userapi.com/v7003815/22a1/xgG9fb-IJ3Y.jpg',
'photo_big': u'http://cs7003.userapi.com/v7003685/1ddd/jZ8LZcwYN20.jpg',
'photo_medium': u'http://cs7003.userapi.com/v7003793/2184/qgHVkPyWj6A.jpg',
'photo_medium_rec': u'',
'photo_rec': u'',
'rate': None,
'relation': 1,
'remote_id': 1L,
'screen_name': u'durov',
'sex': 2,
'skype': u'',
'subscriptions': 1,
'sum_counters': 3438644,
'timezone': 3,
'tv': u'',
'twitter': u'durov',
'university': 1,
'university_name': u'СПбГУ',
'user_photos': 4,
'user_videos': 1,
'videos': 9,
'wall_comments': False}
### 获取用户的朋友
>> 从 v kontakte_users.models 导入 User
>> user = User.remote.fetch(ids=[1])[0]
>> user.fetch_friends()
[\<User: Александра Владимирова>, <User: Илья Перекопский>, <User: Николай Дуров>, '...(remaining elements truncated)...']
用户的朋友可以通过管理器访问
>> user.friends_users.count()
668
### 通过用户方法获取用户墙上的消息
为了实现这一点,需要安装额外的应用程序
[`django-vkontakte-wall`](http://github.com/ramusus/django-vkontakte-wall/) 并将其添加到 `INSTALLED_APPS`
>> 从 v kontakte_users.models 导入 User
>> user = User.remote.fetch(ids=[1])[0]
>> user.fetch_posts()
[\<Post: ...>, <Post: ...>, <Post: ...>, '...(remaining elements truncated)...']
用户的消息可以通过管理器访问
>> user.wall_posts.count()
432
所有用户消息的评论都可以通过管理器访问
>> user.wall_comments.count()
73637
======================
[](http://badge.fury.io/py/django-vkontakte-users) [](https://travis-ci.org/ramusus/django-vkontakte-users) [](https://coveralls.io/r/ramusus/django-vkontakte-users)
此应用程序允许通过Vkontakte API使用标准Django模型与Vkontakte用户资料进行交互
安装
---------
pip install django-vkontakte-users
在 `settings.py` 中需要添加
INSTALLED_APPS = (
...
'oauth_tokens',
'taggit',
'vkontakte_api',
'vkontakte_places',
'vkontakte_users',
)
# oauth-tokens settings
OAUTH_TOKENS_HISTORY = True # 在数据库中保留已过期的访问令牌
OAUTH_TOKENS_VKONTAKTE_CLIENT_ID = '' # 应用程序ID
OAUTH_TOKENS_VKONTAKTE_CLIENT_SECRET = '' # 应用程序密钥
OAUTH_TOKENS_VKONTAKTE_SCOPE = ['ads,wall,photos,friends,stats'] # 应用程序作用域
OAUTH_TOKENS_VKONTAKTE_USERNAME = '' # 用户登录名
OAUTH_TOKENS_VKONTAKTE_PASSWORD = '' # 用户密码
OAUTH_TOKENS_VKONTAKTE_PHONE_END = '' # 用户手机号码最后四位
API方法覆盖
--------------------
* [users.get](http://vk.com/dev/users.get) - 返回用户扩展信息;
* [friends.get](http://vk.com/dev/friends.get) – 返回用户朋友列表ID;
* [likes.getList](http://vk.com/dev/likes.getList) – 返回添加对象到“我喜欢”列表的用户列表;
使用示例
---------------------
### 通过ID获取用户
>> 从 v kontakte_users.models 导入 User
>> User.remote.fetch(ids=[1,2,6])
[\<User: Павел Дуров>,
<User: Александра Владимирова>,
<User: Николай Дуров>]
### 通过页面地址获取用户
>> 从 v kontakte_users.models 导入 User
>> user = User.remote.get_by_slug('durov')
>> user
<User: Павел Дуров>
>> user.__dict__
{'_state': <django.db.models.base.ModelState at 0xb2eba8c>,
'about': u'Steve Dogs',
'activity': u'',
'albums': 3,
'audios': 111,
'bdate': u'10.10.1984',
'books': u'',
'city_id': 380,
'counters_updated': datetime.datetime(2012, 3, 14, 0, 13, 14, 819693),
'country_id': 160,
'facebook': u'',
'facebook_name': u'',
'faculty': 15,
'faculty_name': u'Филологический',
'fetched': datetime.datetime(2013, 2, 14, 15, 13, 46, 673793),
'first_name': u'Павел',
'followers': 3437985,
'friends': 524,
'friends_count': 0,
'games': u'',
'graduation': 2006,
'has_mobile': True,
'home_phone': u'',
'id': 2765,
'interests': u'',
'last_name': u'Дуров',
'livejournal': u'durov',
'mobile_phone': u'',
'movies': u"Flying Over Cuckoo's Nest, Rainman, Fight Club, Matrix, Equilibrium, Watchmen",
'mutual_friends': 0,
'notes': 6,
'photo': u'http://cs7003.userapi.com/v7003815/22a1/xgG9fb-IJ3Y.jpg',
'photo_big': u'http://cs7003.userapi.com/v7003685/1ddd/jZ8LZcwYN20.jpg',
'photo_medium': u'http://cs7003.userapi.com/v7003793/2184/qgHVkPyWj6A.jpg',
'photo_medium_rec': u'',
'photo_rec': u'',
'rate': None,
'relation': 1,
'remote_id': 1L,
'screen_name': u'durov',
'sex': 2,
'skype': u'',
'subscriptions': 1,
'sum_counters': 3438644,
'timezone': 3,
'tv': u'',
'twitter': u'durov',
'university': 1,
'university_name': u'СПбГУ',
'user_photos': 4,
'user_videos': 1,
'videos': 9,
'wall_comments': False}
### 获取用户的朋友
>> 从 v kontakte_users.models 导入 User
>> user = User.remote.fetch(ids=[1])[0]
>> user.fetch_friends()
[\<User: Александра Владимирова>, <User: Илья Перекопский>, <User: Николай Дуров>, '...(remaining elements truncated)...']
用户的朋友可以通过管理器访问
>> user.friends_users.count()
668
### 通过用户方法获取用户墙上的消息
为了实现这一点,需要安装额外的应用程序
[`django-vkontakte-wall`](http://github.com/ramusus/django-vkontakte-wall/) 并将其添加到 `INSTALLED_APPS`
>> 从 v kontakte_users.models 导入 User
>> user = User.remote.fetch(ids=[1])[0]
>> user.fetch_posts()
[\<Post: ...>, <Post: ...>, <Post: ...>, '...(remaining elements truncated)...']
用户的消息可以通过管理器访问
>> user.wall_posts.count()
432
所有用户消息的评论都可以通过管理器访问
>> user.wall_comments.count()
73637
项目详细信息
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
django-vkontakte-users-0.8.7.tar.gz (33.7 kB 查看哈希值)