npr云框架

npr的Python项目详细描述


npr
==


此模块提供了一个使用npr云服务的简单框架。

代码块::python


安装:
----


首先验证应用程序。auth将引导您完成密钥创建。

…代码块:python

import npr
npr.auth()

**输出**:

…代码块::bash

验证应用程序:
1。登录http://dev.npr.org(如果是第一次,则需要注册。)
2。打开开发控制台(位于开发中心右上角的下拉列表)
3。创建新应用程序
4。选择该应用程序并在下面输入您的凭据
应用程序ID:

在提示下填写您的应用程序ID和密码。一旦验证,您必须登录:

…代码块::python


**输出**:

…代码块::bash

转到https://secure.npr.org/device login并输入:
z3sdm6

脚本将每5秒轮询一次npr身份验证服务器,直到您登录并获得令牌为止。
然后它会存储您的令牌,而您是shant(shant!)必须再次执行此操作。

common variables:
----
许多类的最常用变量已加载到命名空间中,
,您可以在资产字典中访问这些变量:

。代码块::python

stations=npr.stations('boston')
stations.a

**输出**:

…代码块::bash
{id':'330',
'mp3':'https://icecast stream.wbur.org/wbur_nprog',
'name':'wbur',
'station':[{id':'330',
'mp3':'https://icecast stream.wbur.org/wbur_nprog',
'name':'wbur',
'stream:'https://icecast stream.wbur.org/wbur.aac'},
{'id':'396',
'mp3':'https://streams.audio.wgbh.org:8200/wgbh',
'name':'wgbh radio',
'stream':'https://streams.audio.wgbh.org:8200/wgbh'},
{'id':'168809220','name':'wgbh'},
'stream':'https://icecast stream.wbur.org/wbur.aac'}

代码块::python

stations.stream

**输出**:

…代码块::bash

'https://icecast stream.wbur.org/wbur.aac'




自定义变量:
----


代码块::python

search=npr.search('hidden brain')
search.pretty()

**输出**:

…代码块::bash

"audiotitle":"ep.64:我说得对,你错了",
"日期":"2017-03-13t21:00:19-04:00",
"说明":"有些主题
"项目":[],
"链接":{
"音频":[
{
"内容类型":"音频/mp3",
"ref":"https://play.podtrac.com/npr-510308…


,使用上述输出,查询以找到**ep的键。64:我说得对,你错了。代码块:python

search.find("ep.64:我是对的,你错了"

**输出**:

…代码块::bash

ep。64:我说得对,你错了。回复["items"][0]["items"][2]["attributes"]["audiotitle"]


,现在你可以循环浏览所有最近的剧集:

……代码块::python

用于搜索中的插曲。响应['items'][0]['items']:
打印(插曲['attributes']['audiotitle'])

**输出**:

代码块::bash

ep。66:骗子,骗子第65集:隧道视力。64:我是对的,你错了

要从这个聚合中获取**超过最后三集**,你需要查找
关联代码并将其传递给**agg类**:

。代码块::PYTHon

hiddenbrain=agg('510308')
hiddenbrain.pretty()


构建一个NPR One应用程序:
----


这无助于您通过扬声器播放音频,但它将为您提供所需的数据。首先,初始化你的播放器:

…代码块:python

player=npr.one()

代码块:python

player.title
player.audio


代码块::python


代码块::python


…取决于用户操作。然后调用player.audio播放下一个片段。

explore选项卡:
----


频道终结点只让您知道可用的集合。对于explore选项卡中的每一行(集合),您需要一个不同的调用。因此,要初始化explore对象并查看第三行中的所有报道,请使用:

…代码块::python

explore=npr.channels()
explore.fetch(2)
explore.row.pretty()

authentication函数:
----

**npr.logout()**-从应用程序中移除用户的承载令牌。请记住在分发应用程序之前注销。
**npr.deauth()**-通过删除npr.conf文件从应用程序中删除开发人员凭据

endpoint类:
----

**npr.station(orgid)**-返回有关npr站的元数据,其中"orgid"是电台的组织ID。
**npr.stations('query')**-返回与查询匹配的npr电台的元数据(呼叫字母、邮政编码、城市或任何索引值)
**npr.stations(lat,lon)**-返回某个位置的npr电台的元数据(lon应为负数,因为我们所有的电台位于子午线以西)
**npr.search('query')**-返回与您的"query"匹配的节目或插曲标题
**npr.searchall('query')**-返回与您的"query"匹配的任何报道
**npr.user()**-返回关于登录用户
**npr.recommend()**-返回登录用户的建议音频列表。
**npr.one()**-类似于recommend,除了您可以通过skip()和complete()
**npr.agg()**-返回所选聚合的音频段(也称为Affliation)
**npr.channels()**-从explore选项卡返回通道,该选项卡和fetch(row)一起也将返回段。

endpoint helper函数:
--------

npr.docs()**-列出端点调用示例
<;对象名>;**.a**-列出加载到当前对象的命名空间中的变量。
ue')**-返回您输入的值的json密钥路径

代码块::bash

巴氏杀菌-w\uuu init_uuu.py

-在jupyter中打开npr/tests/test.ipynb并运行一些测试
-在npr/setup.py中增加版本号并添加任何新的依赖项

。代码块::bash

)构建包:

…代码块::bash

python setup.py sdist bdist_wheel

-更新绳线(可选)并将其上载到pypi:

…代码块::bash

pip install--upgrade tween
tween upload dist/*--跳过现有的

-卸载并在计算机上重新安装npr。

…代码块::bash

pip uninstall npr
pip install npr

(拍拍自己的背)




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

推荐PyPI第三方库


热门话题
空字符串检查在java中未按预期工作   JavaSpringWebClient:自动计算主体的HMAC签名并将其作为头传递   foreach是否有一个Java等效的foreach循环和一个引用变量?   java如何在Eclipse中导入jar   使用特定第三方或java时lombok触发错误。*方法或构造函数   安卓 java将对象数组转换为int数组   java使一定百分比的JUnit测试通过   java Android:将Seekbar的一个值与另一个值进行比较   java将int数组(图像数据)写入文件的最佳方式是什么   java取代了系统。yml的构造函数内的getProperty   sqlite Java将公钥和私钥转换为字符串,然后再转换回字符串   安卓获取白色像素并将其保存到java opencv中的数组中   java为什么是ServerSocket。setSocketFactory静态?   Java数组似乎在不直接修改的情况下更改值