ok.ru python rest api包装器

aiookru的Python项目详细描述


ok.ru python rest api包装器

关于

这是ok.ru(俄罗斯社交网络)python api包装器。 目标是支持所有的api方法:https://apiok.ru/en/dev/methods/rest

开始

使用pip安装软件包

pip install aiookru

要使用ok api,您需要在社交网络中注册应用程序和帐户。

  1. 注册ok.ru
  2. 创建external应用程序。
  3. 保存app idapp keyapp secret key
  4. 使用app id、所需权限列表和用户凭据获取访问令牌
  5. 使用访问令牌发出方法请求。

注册后,转到https://apiok.ru/en/dev/app/create并创建应用程序。

app_id='app ID'app_key='app key'app_secret_key='app secret'

含义

通过将用户凭据和权限传递给ImplicitSession(或ImplicitClientSession),可以使用OK API OAuth进行身份验证/ ImplicitServerSession)。

fromaiookru.sessionsimportImplicitSessionphone='+1999123456'password='user password'session=awaitImplicitSession(app_id=app_id,app_key=app_key,app_secret_key=app_secret_key,login=phone,passwd=password,permissions='VALUABLE_ACCESS',)

现在可以执行api请求(请参见Executing API requests)。 身份验证后,您将获得访问令牌session.access\u令牌和 会话密钥session.session_secret_key。保存它们以便以后提出请求:

access_token=session.access_tokensession_secret_key=session.session_secret_key

令牌会话

如果您已经有两个:

  • app_secret_keyaccess_token
  • session_secret_key
fromaiookru.sessionsimportTokenSessionsession=TokenSession(app_key=app_key,app_secret_key=app_secret_key,access_token=access_token,session_secret_key=session_secret_key,)

您可以实例化TokenSession(或ClinentSession/ServerSession)并执行请求。

执行api请求

fromaiookruimportAPIapi=API(session)# current user's friendsfriends=awaitapi.friends.get()

在引擎盖下,每个api请求都包含有:

  • application_key
  • sig
  • app_secret_keyaccess_tokensession_secret_key
  • format
  • method

默认情况下,会话尝试推断要使用哪个签名电路:

  • 如果app_secret_keyaccess_token不是空字符串,则使用服务器服务器签名电路
  • 否则,如果session_secret_key不是空字符串,则使用客户机-服务器签名电路
  • 否则将引发异常

您可以通过传递给API来显式地选择用于签名请求的电路 以下会话中:

服务器电路
fromaiookruimportImplicitServerSession,APIsession=awaitImplicitServerSession(app_id,app_key,app_secret_key,phone,password)api=API(session)

或者如果您已经有访问令牌

fromaiookruimportServerSession,APIsession=ServerSession(app_key,app_secret_key,access_token)

客户机-服务器电路
fromaiookruimportImplicitClientSession,APIsession=awaitImplicitClientSession(app_id,app_key,phone,password)api=API(session)

或者您已经有会话密钥

fromaiookruimportClientSession,APIsession=awaitClientSession(app_key,session_secret_key)api=API(session)

许可证

aiookru根据bsd 2子句许可证发布。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java复选框。setOnCheckedChangeListener调用崩溃应用程序?   java如何模拟@InjectMocks类中的方法?   注释Java getter和setter   java是否锁定jar或DLL文件?   java绝对uri:http://www.slf4j.org/taglib/tld无法解决   java无法解析符号FirebaseMessagingService   java Glassfish 4中的性能调谐器在哪里?(优化树莓皮)   java获取同一页面上的内容标签   java NoClassDefFoundError,这里忽略了什么?(附图)   OnCreate中的java代码没有按顺序运行   如何在MongoDB Java驱动程序中用多个字段表示对象   java使用JTextfield文本重复搜索JTable   java奇怪的效果与字符串比较==   如何在Java Play框架中托管API?   hibernate中的java交叉连接问题