Skip to main content

arcsecond.io 的 CLI

项目描述

[![构建状态]( https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Farcsecond-io%2Fcli%2Fbadge&style=flat)](https ://actions-badge.atrox.dev/arcsecond-io/cli/goto ) [![下载]( http://pepy.tech/badge/arcsecond)](http://pepy.tech/project/arcsecond )

# 弧秒 CLI

arcsecond.io 的命令行界面 (CLI)。它也可以用作 Python 模块。

# 安装

只需运行:

$ pip install arcsecond

然后可以像任何其他命令行一样访问帮助:

$ arcsecond –帮助

或者

$ arcsecond <命令> –帮助

# 开始

您必须先登录才能访问 API。这是为了方便访问私有 API 以及服务器日志记录,以便更好地了解我们的 API 的使用情况。

$弧秒登录

要跳过提示:

$ arcsecond login –username <用户名> –password <密码>

再次登录将用新的 API 密钥覆盖当前的 API 密钥(假设登录成功)。

您也可以直接从那里注册:

$弧秒寄存器

您的私有 API 密钥将存储在~/.arcsecond.ini的配置文件中。然后,您可以访问公共和私有 API。

然后,您可以访问自己的完整个人资料:

$弧秒我

有关所有命令,请参见下文。

# 用法

理念:Arcsecond CLI 使用与git相同的原理:它有一个全局命令arcsecond,后跟子命令。子命令具有 API 端点的名称

例如,要获取关于一个物体的信息,同样地,一个系外行星:

$ 弧秒天体“HD 5980” $ 弧秒系外行星“51 Peg b”

对于天体和系外行星,您可以在默认浏览器中打开网页:

$ arcsecond objects “HD 5980” –open $ arcsecond 系外行星“51 Peg b” –open

或者在该对象的默认浏览器中打开 API 网页:

$ arcsecond o “HD 5980” –open api $ arcsecond exoplanets “51 Peg b” –open api

对于其他事情,例如私人观察运行和夜间日志,同样:

$ arcsecond observingruns <uuid> $ arcsecond nightlogs <uuid>

将其用作 Python 模块如下

>>> from arcsecond import ArcsecondAPI
>>> ArcsecondAPI.login(<username>, <password>)
>>> ArcsecondAPI(ArcsecondAPI.ENDPOINT_OBJECTS).read('HD 5980')

## 可用端点

到目前为止可用的只读API 端点(以及子命令)有: * objects , exoplanetsFindingcharts(公共) * observingsites望远镜仪器(公共) * profile(公共) * satellites(公共) * observingrunsnightlogs(私人)*(个人资料,私人)

观察跑步和夜间日志将在不久的将来可写。至于观测站、望远镜和仪器,正在研究中。

目前可用的读写API 端点有: *活动(公共) *数据集数据文件(私有)

读写 API 使用 4 种标准 CRUD 方法:createreadupdatedelete(而只读 API 隐含地只有read方法)。

详情见下文。

## 数据集和数据文件

您可以从此 CLI/Python 模块完全管理您的数据集和数据/FITS 文件(包括上传)。

列出你的数据集(这两种方法是相同的,第二种方法只是明确地写了它的动作名称):

$ arcsecond 数据集 $ arcsecond 数据集读取

要创建数据集:

$ arcsecond datasets create –name “这是一个新数据集”

要删除数据集(警告:这也会删除关联的数据/FITS 文件!):

$ arcsecond datasets delete <dataset uuid>

数据文件必然与数据集相关联。因此,必须提供数据集 UUID。上传数据文件:

$ arcsecond datafiles <dataset uuid> create –file <本地数据文件的路径>

要删除一个数据文件,可以使用它的“id/pk”(pk = Primary Key == ID):

$ arcsecond datafiles <dataset uuid> delete <数据文件pk>

作为 Python 模块:

>>> from arcsecond import ArcsecondAPI
>>> api = ArcsecondAPI.datafiles(dataset='<dataset_uuid>')
>>> api.create(file='<file path>')

更多文档即将发布。

## 观察活动

Arcsecond CLI 允许列出、创建、读取和更新所谓的观察活动。这是一种发布并让世界知道您正在观察什么的简单方法。

<h4>结果会实时显示https://www.arcsecond.io / live</h4>

活动命令的用法与上面的相同,但具有更多功能。

要阅读最近 10 项活动的列表(未来 10 项的限制可能会演变):

$ arcsecond 活动 $ arcsecond 活动读取

要读取特定活动的内容,请提供主键<pk>(它是一个整数)

$ arcsecond 活动读取 <pk>

要创建一个只有标题和内容的新活动(目前仅支持纯文本):

$ arcsecond 活动创建 –title “你的标题” –content “活动内容”

最后,创建一个完整的天文观测活动:

$ arcsecond 活动创建 –observing_site <uuid> –telescope <uuid> –instrument <uuid> –target <目标名称>

observation_site望远镜仪器的字段是可选的,您可以提供所有的任何(一致)组合。

# 发展

要开始开发 arcsecond CLI,请 fork 项目,git clone它,然后在 arcsecond-cli 文件夹中执行(假设已安装 [virtualenv]( https://virtualenv.pypa.io/en/stable/ )):

`bash $ cd ~/arcsecond-cli $ virtualenv --python=pythonX.Y env $ source env/bin/activate $ pip install -e。`

最后一行确保您可以调用该文件夹代码的“本地安装”版本。第一次完成后,重新启动调试会话时只需要源 env/bin/activate 。

项目详情