用于与被动数据工具包服务器交互的客户端库

passive-data-kit-client的Python项目详细描述


使用、复制和分发的条款和条件。定义。

"许可证"系指本文件第1节至第9节中定义的使用、复制、传播的条款和条件。

"许可证"系指版权所有人或由GRA授权的实体。"法人实体"是指代理实体与所有控制、受该实体控制或与该实体共同受其控制的其他实体的联合体。在本定义中,
"控制"是指(i)通过合同或其他方式,直接或间接导致该实体
指导或管理的权力,或(ii)拥有百分之五十(50%)或以上的
流通股,或(iii)该实体的实益所有权。

"您"(或"您的")是指行使本许可证授予的许可的个人或法人实体。


"来源"表格是指进行修改的首选表格,
包括但不限于软件。是源代码、文档和配置文件。


"对象"形式是指源形式的机械转换或翻译产生的任何形式,包括但不限于编译的目标代码、生成的文档,
以及转换为其他媒体类型。

"作品"应指根据许可证提供的作者作品,无论是源形式还是对象形式,如作品中包含或附加的版权声明所示(提供了一个示例在下面的附录中)。

"衍生作品"应指基于(或衍生自)作品的任何作品,无论是源作品还是客体作品,其编辑修订、注释、说明或其他修改作为一个整体表示,作者的原创作品就本许可证而言,衍生作品不应包括与作品及其衍生作品的界面分离或仅链接(或通过名称绑定)的作品。


"贡献"应指任何作者作品,包括ng
作品的原始版本以及对该作品或其衍生作品的任何修改或添加,由版权所有人或授权的个人或法律实体提交给许可方,以包含在作品中。麻省理工学院代表版权所有人。在本定义中,"提交"是指发送给许可方或其代表的任何形式的电子、口头或书面通信,包括但不限于电子邮件列表、源代码控制系统上的通信。nd发行跟踪系统,由
许可方管理或代表
许可方管理,以讨论和改进作品,但
不包括明显标记的通信或版权所有人书面指定为"非贡献"的通信。"

"贡献者"是指许可方和任何个人或法人,
由许可方代表其收到贡献,并随后并入作品中。


2。授予版权许可证。根据
本许可的条款和条件,每位贡献者在此授予您一个永久性的
全球范围内的,非排他性的,免费的,免版税的,不可撤销的
版权许可,用于复制,准备,
公开展示,公开演出的衍生作品。orm、转授权和分发
工作和此类派生e以源或对象的形式工作。

>3。专利许可的授予。根据
本许可的条款和条件,每位出资人在此授予您一份永久的
全球范围内的、非排他性的、免费的、免版税的、不可撤销的
(本节另有规定的除外)专利许可,以制作、已经制作、使用、要约出售、出售ll、进口和以其他方式转让该作品,
如果该许可仅适用于由该贡献者单独或通过其贡献与该作品的结合而必然受到侵犯的可由该贡献者许可的专利权已提交了此类稿件。如果您对任何实体提起专利诉讼(包括诉讼中的交叉索赔或反诉),声称工作或工作中的贡献构成直接的专利侵权,则任何专利许可证
根据本许可证授予您的工作应在提起此类诉讼之日终止。再分配。您可以在任何媒介中复制和分发
作品或其衍生作品的副本,无论是否进行
修改,并以源形式或目标形式复制和分发,前提是您
满足以下条件:

(a)您必须向世界其他任何接收者提供k或
衍生作品本许可证的副本;以及

(b)您必须使任何修改过的文件带有显著的通知
,说明您更改了文件;以及

(c)您必须以任何衍生作品的源形式保留您分发作品来源形式的所有版权、专利、商标和归属通知,
不包括不属于衍生作品任何部分的通知;以及

(d)如果作品包括一个"通知"文本文件t在其
发行中,则您发行的任何衍生作品必须在该通知文件中包含
归属通知的可读副本,不包括不属于衍生作品任何部分的通知。至少有一个
在以下位置:作为衍生作品的一部分分发的通知文本文件内;在源表单或
文档内(如果随衍生作品一起提供);或在衍生作品生成的显示内e在通常出现第三方通知的情况下有效。通知文件的内容
仅供参考,并且
不会修改许可证。您可以在您分发的衍生作品中添加您自己的归属
通知,并将其与
一起添加,或将其作为该作品通知文本的附录,前提是
此类附加归属通知不能解释为修改许可证。

您可以将自己的版权声明添加到您的修改中,并且
可以提供其他或不同的许可条款和条件,以便使用、复制或分发您的修改,或者
作为一个整体,为任何此类衍生作品提供使用,
复制和分发本作品,否则应符合本许可证规定的条件。


5.提交稿件。除非您另有明确说明,否则您有意提交给许可方的任何稿件均应符合本许可的条款和条件,无需附加任何条款和条件。本协议的内容应取代或修改您可能已经与许可方就此类出资签订了任何单独的许可协议。商标。本许可证不允许使用许可方的商标名称、商标、服务标志或产品名称,除非在描述作品的来源和复制通知文件的内容时有合理和惯常的使用要求。



8。责任限制。在任何情况下,在任何法律理论下,
无论是在侵权行为(包括疏忽)、合同或其他方面,
除非适用法律要求(如故意和严重的
疏忽行为)或书面同意,否则任何贡献者都不应对您的损害负责。包括任何直接、间接、特殊、附带或后果性损害,这些损害是由于本许可证引起的,或由于使用或无法使用工作而引起的(包括但不限于商誉损失损害赔偿、停工、合同计算机故障或故障,或任何及所有
其他商业损害或损失,即使已通知该贡献者
此类损害的可能性。接受保证或附加责任。在重新分配
作品或其衍生作品时,您可以选择提供,
并收取费用、接受支持、保证、赔偿,
或与本
许可证一致的其他责任义务和/或权利。但是,在接受此类义务时,您只能代表您自己和您的唯一责任行事,而不能代表任何其他出资人,并且只有在您同意赔偿,
辩护,并使每个出资人免于承担由此引起的任何责任的情况下,或因您接受任何此类保证或附加责任而对此类贡献者提出索赔。


条款和条件结束

附录:如何将apache许可证应用于您的工作。

他遵循
样板通知,括号"["
中的字段替换为您自己的标识信息。(不要包括
括号!)文本应包含在文件格式的适当
注释语法中。我们还建议在
与版权声明相同的"打印页"中包含
文件或类名和用途说明,以便于在第三方档案中进行
标识。

r阿帕奇许可证,2.0版("许可证");
除非符合许可证,否则您不得使用此文件。
除非适用法律要求或书面同意,否则您可以在http://www.apache.org/licenses/license-2.0


http://www.apache.org/licenses/license-2.0获取许可证副本,根据许可证分发的软件是按"原样"分发的,
没有任何明示或暗示的保证或条件。
请参阅许可证,了解管辖许可证的特定语言和许可证的限制。

说明:被动数据包客户端

*此库**仍在建设中**。不要在稳定的上下文中使用,因为
实现可能会更改。*


此库实现了一个python客户端库,用于访问被动数据
kit(pdk)服务器,并使用所有相关的
logg将数据查询到本地上下文中。在服务器端执行和审核。它使用django查询作为
灵感和功能非常相似。


me=username,password=password)

创建数据点查询对象
query=client.query\u data\u points(page\u size=page\u size)


返回服务器上的数据点总数。
query.count()

创建一个新的查询对象,将其约束到特定的数据源。
new_query=query.filter(source='source-id')
new_query.count()

new_query=query.filter(source='source-id',generator_identifier='pdk-device-battery').order_by('created')
first_battery_point=new_query[0]

/>
遍历查询中的所有匹配项。
对于新查询中的点:
打印(json.dumps(point,indent=2))

ery=query.filter(generator_identifier='pdk-device-battery').exclude(source='source-id').order_by('created')

\notes

参数:

*`site_url`:pdk安装的url前缀。(例如:`https://mysite/data/`)
*`username`:授权pdk用户的用户名。
*`password`:授权pdk用户的密码。

取而代之的是令牌。令牌的状态
可以在使用时检查:

from pdk_client import pdkclient

创建客户端对象。
client=pdkclient(site_url=site_url,username=username,password=password)

如果令牌已过期且应创建新客户端,则返回true,否则返回false。
is廑expired=client.expired()

廑返回编码过期日期的datetime.datetime对象。
when廑expires=client.expires()

ize`参数可以传递给
控制查询的数量和大小:

query=client.query_data_points(page_size=page_size)

来自服务器的数据。由于可用数据的大小可能会超过内存和带宽资源,因此允许必要的工作
分解成可操作的块。在内部,库还添加了一个
附加约束,其中返回的数据将是调用"pdkclient.query_data_points"时
服务器上存在的数据,消除了
在调用查询
正在使用中。

当使用"filter"或"excludes"函数约束查询时,这些
函数将映射到pdk服务器上的django等价物上。支持相应服务器"数据点"对象上的
参数,以及远程服务器支持的任何
特殊参数,例如[jsonfield querys](https://docs.djangoproject.com/en/1.11/ref/contrib/postgres/fields/querying jsonfield)
ostgres服务器:

query.filter(properties\u application\u icontains='youtube').count()

\r安装

ciouscode/passivedaktakit client python.git

支持:

*支持查询其他被动数据包类型:数据源、警报、导出。
*支持[q-object](https://docs.djangoproject.com/en/1.11/topics/db/querys/complex-lookups-with-q-objects)等同物,支持更灵活的布尔参数ers.
*支持更新令牌。
*完全支持querys中的[切片](https://www.w3schools.com/python/ref_func_slice.asp)。
当前项可以通过索引访问,但不能通过范围访问。

如果遇到任何错误或其他问题,请[添加问题](https://github.com/audaciouscode/passivedaktakit client python/issues)。

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

推荐PyPI第三方库


热门话题
java什么类似于安卓中iOS的VOIP推送和呼叫工具包,用于呼叫   java广播接收器第二次不工作   从maven本地导入java   java如何在jdbc中执行oracle过程   java单击按钮时如何更改JButton上的图像?   java Univocity如何将3(n)行解析为一行(bean)   java消除了字符串中出现的所有特定模式   javascript为什么Js不能从我的web服务目录加载图像文件?   pdf如何在没有AdobeAcrobat的情况下在Java中自动创建字段   反思如何以编程方式创建java文件   AmazonWeb服务java。木卫一。IOException:尝试读取aws s3存储桶上的关闭流   java如何在kotlin中映射基于升序的数组列表和排序   java执行一个方法的时间片段出现   不使用'synchronized'关键字的java线程安全代码?   使用Java小程序在浏览器中滚动至顶部   避免“ZLIB输入流意外结束”的java计时要求