mixcloud.com API的绑定

mixcloud的Python项目详细描述


从python访问mixcloud.com api

Build StatusCoverage Status

这为http://mixcloud.com网站提供了一个python api。

示例

frommixcloudimportMixcloudm=Mixcloud()u=m.user('michelplatiniste')forcinu.cloudcasts():printc.name

授权

必须有一个在mixcloud注册的应用程序和相应的 客户端ID和机密。

授权是一个多步骤的过程:

  1. 生成授权URL
  2. 将用户重定向到URL以授权您的应用程序
  3. 从重定向中收集codequery string参数
  4. 交换访问令牌的代码
o=mixcloud.MixcloudOauth(client_id=client_id,client_secret=client_secret,redirect_uri=redirect_uri)url=o.authorize_url()# Next redirect the user to `url`. They will be redirected to your# redirect uri with a `code` query string parameter. This must be# exchanged with Mixcloud for an access token.access_token=o.exchange_token(code)# This can then be used for calls that required authorization.m=mixcloud.Mixcloud(access_token=access_token)print(m.me())

也可以选择将访问令牌存储在.netrc文件中,然后 将自动使用。机器名必须是mixcloud api

例如:

machine mixcloud-api
password my_access_token

正在上载

可以使用此模块上载cloudcasts。为了做 你需要被认证。为此,请为 构造器。

m=mixcloud.Mixcloud(access_token=access_token)cc=Cloudcast(...)withopen(mp3_path)asmp3:r=m.upload(cc,mp3)

YML文件支持

可以将cloudcasts表示为yaml文件。见 example.yml

相关键为:

KeyType
titleString
descString
tagsList of strings
tracksList of tracks

每个音轨都是一个dict,具有以下键:

KeyType
startInteger
artistString
trackString

您可以利用yaml语法来处理“start”字段:2:54将 直接解析为174(然后是秒数)。

可以使用以下命令解析此类文件:

withopen(yml_path)asyml:cc=mixcloud.Cloudcast.from_yml(yml,None)

模拟

为了测试目的,在mixcloud.mock中提供了一个模拟服务器。

变更日志

0.4.0

发布日期:2015-10-27

  • 切换到语义版本控制。
  • 呼叫/me(10)时包括访问令牌
  • 为oauth(11)添加一个helper类
  • 支持存储在netrc中的访问令牌(9,12)

0.0.3

发布日期:2015-03-15

  • 图片可以上传和检索(6)
  • 在tarball中包含许可证(8)

0.0.2

发布日期:2015-01-28

  • 从requirements.txt切换到install_u requires(7)
  • 将history.rst添加到manifest.in

0.0.1

发布日期:2015-01-28

  • 初始版本

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

推荐PyPI第三方库


热门话题
java提供了大量的Quartz工作线程   来自SOAPException的java抛出超时异常   java通过REST web服务同步PostgreSQL过程调用   java Hibernate:在关联表中设置值   javaimapidlechanneladapterjavax。邮政AuthenticationFailedException:[警报]同时连接太多   JavaApacheStorm:stormkafkamonitor脚本引发异常   java将jar链接到战争   Matlab与Java的集成方法   安卓公司。谷歌。ads.AdView未能实例化java。lang.ClassNotFoundException:org。json。JSONException   “String forecastStr=mForecastAdapter.getItem(position);”行中出现java错误阳光工程   java如何将Mono中的列表属性作为流量进行操作?   java DecimalFormat类不必要地给出整数   java@IfProfileValue两个spring配置文件   java如何使用SwingWorker创建多线程?   java从扩展SwingWorker的内部类触发事件   java二叉树高度实现