访问civis平台api

civis的Python项目详细描述


Build statusLatest version on PyPISupported python versions for civis-python

简介

civis api python客户端是一个python包,它帮助分析人员和 开发人员与civis平台交互。该包包括一组 围绕通用工作流的工具以及方便的界面 直接请求civis api。

请看 full documentation了解更多详细信息。

API键

为了向civis api发出请求, 您将需要一个civis平台api密钥,这是您唯一的。 找到创建新密钥的说明 here。 api密钥有一个设置的过期日期,需要在 至少每30天一次。api客户端将查找CIVIS_API_KEY 环境变量来访问API密钥,因此在创建新的API密钥之后, 按照以下步骤操作系统以设置环境。

linux/macos

  1. 为bash的.bash_profile(或.bashrc添加以下内容:

    export CIVIS_API_KEY="alphaNumericApiK3y"
    
  2. 获取.bash_profile源代码(或重新启动终端)。

窗口10

  1. 导航到“设置”->;在搜索栏中键入“环境”->; “编辑帐户的环境变量”。这也可以找到 在“系统属性”->;“高级”->;“环境变量…”。
  2. 在用户变量部分中,如果^ {TT1}$已经存在 环境变量列表,单击它并按“编辑…”。 否则,请单击“新建…”。
  3. 输入civis_api_key作为“变量名”。
  4. 输入api密钥作为“变量值”。你的api密钥应该是 就像一长串的字母和数字。

安装

创建api密钥并设置CIVIS_API_KEY环境之后 变量,使用推荐的方法通过pip

安装python包civis
pip install civis

或者,如果您对通过pip尚未发布的最新功能感兴趣, 您可以从github克隆代码并从源代码生成:

git clone https://github.com/civisanalytics/civis-python.git
cd civis-python
python setup.py install

您可以通过运行

importcivisclient=civis.APIClient()print(client.users.list_me()['username'])

如果civis安装正确,这将打印您的civis 平台用户名。

客户端对pandas具有软依赖性,以支持诸如 数据类型分析。如果使用io命名空间进行读或写 来自civis的数据,强烈建议您安装pandas和 在接受该参数的函数中设置use_pandas=True。安装 pandas

pip install pandas

ml命名空间中的机器学习功能对 scikit-learnpandas。将scikit-learn安装到 从CIVIS平台导出训练过的模型或 提供您自己的自定义模型。使用pandas下载模型预测 从CIVIS平台。civis.ml代码 可选地使用feather 将数据从本地计算机传输到CIVIS的格式 站台。使用

pip install scikit-learn
pip install pandas
pip install feather-format

一些civisml模型在 添加到scikit-learn中,如果您想 下载模型对象。这些依赖关系是 civisml-extensionsglmnetmuffnn。安装这些 依赖于

pip install civisml-extensions
pip install glmnet
pip install muffnn

python版本支持

python 2.7、3.4、3.5、3.6和3.7

用法

civis在的civis api周围包含许多包装器 通用工作流。

importcivisdf=civis.io.read_civis(table="my_schema.my_table",database="database",use_pandas=True)

civis api也可以通过APIClient类直接访问。

importcivisclient=civis.APIClient()database=client.databases.list()

有关更多信息,请参见full documentation 完整的用户指南。

重试次数

对于某些API错误响应,API客户端将自动重试。

如果错误是[413429503]中的一个,并且告诉api客户端它需要多长时间 在安全重试之前等待(429总是这样,它们是 速率限制错误),则客户端将等待指定的时间量 在重试请求之前。

如果错误是[429502 503504]中的一个,并且请求不是patch*post* 方法,则API客户端将重试请求多次,但有延迟, 看看是否会成功。

在本地生成文档

要安装用于生成文档的依赖项:

pip install Sphinx
pip install sphinx_rtd_theme
pip install numpydoc

在本地生成api文档:

cd docs
make html

然后打开docs/build/html/index.html

注意,这将在CIVIS_API_KEY环境中使用您的api密钥 变量,因此它将为您有权访问的所有端点生成文档。

贡献

请参阅CONTRIBUTING.md以获取有关对此项目作出贡献的信息。

许可证

BSD-3

有关详细信息,请参见LICENSE.md

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

推荐PyPI第三方库


热门话题
如何在Eclipse中设置Java路径,以便在外部驱动器上运行它?   在windows上使用Java服务包装器GUI与桌面交互   java是与此字符序列不匹配的正则表达式   java无法使用kafka管理客户端API创建具有所需分区的kafka主题   java基于单个单元格值获取整个excel行   当使用Spring的构造函数注入时,java bean是否在构造函数中完全初始化?   java重置LineNumberReader的计数器   将字符串从Java文件传递到jQuery   安卓在来自不同Java类文件的活动中祝酒   java在使用mvvm时如何在zk中更新progressmeter   使用regex获取由“”Java包围的值   使用tester类的java猜谜游戏   api响应的java POJO,其密钥为“”   java正则表达式,用于匹配长度大于n的字母和数字字符串?   java如何使用Json保存和恢复RecyclerView项的位置   在Java中用字符代码替换字符串   Jenkins中的java PermGen错误   java swing panel问题   boolean在Java中,false如何可能等于true   java如何使用Servlet从HTML表单中检索“分组”项?