Metadata-Version: 2.4
Name: ict-auth
Version: 2.0.0
Summary: 使用 CLI 进行中科院计算所上网认证登陆
Project-URL: Homepage, https://github.com/jklincn/ict_auth
Project-URL: Repository, https://github.com/jklincn/ict_auth
Author-email: jklincn <jklincn@outlook.com>
License-Expression: MIT
Requires-Python: >=3.9
Requires-Dist: playwright>=1.48.0
Requires-Dist: typer>=0.15.4
Description-Content-Type: text/markdown

# ICT Auth

> ✨全新的 2.0 版本：使用 pip 即可安装**（并且无需 sudo 权限）**！

使用 CLI 进行中科院计算所上网认证登陆。

核心想法：

- ipv6 网络在未认证的情况下可用
- 使用浏览器的无头模式来模拟网页操作

## 安装

```
pip install ict-auth
```

这会通过 ipv6 网络下载安装包并进行安装。

> 常见问题：
>
> 1. 如果服务器上没有安装 pip，可以尝试以下命令安装 pip：
>
>    ```
>    python3 -m ensurepip --default-pip
>    ```
>
> 2. 如果服务器正确连接网线但没有获取到公网 ipv6 地址，可以在本地[手动下载安装包]()再使用 scp 拷贝至远程服务器

## 使用

### 登陆/退出/当前状态

```
ict_auth
```

这会检测当前的登陆状态：

- 如果是未登录情况，**默认会进行登陆过程**；
- 如果已登录，则会打印当前信息，并**询问是否退出登陆**。

### 自动重连 (Beta)（暂未重构完成）

据观察，所里的网络偶尔会自动断开，可以使用 `enable` 将程序注册为后台服务，持续检测上网认证状态。如果发现网络断开，则自动进行登陆。默认检测频率是每分钟一次，如果出错则十分钟后进行重试。

**注意：这会在本地明文保存账号与密码，存在账号安全隐患（待优化）**

```
ict_auth enable
```

使用 `disable` 取消持久连接（这会卸载系统服务并清空账号信息）

```
ict_auth disable
```

使用 `logs` 查看持久连接日志

```
ict_auth logs
```

