Skip to main content

No project description provided

Project description

csust-login

这是一个用于自动登录长沙理工大学校园网的 Python 脚本与守护进程工具。该工具能够自动检测网络连接状态,并在掉线时自动进行登录。

项目使用了自定义 DNS 解析及备用 IP 回退机制,并且支持在网络异常时执行自定义重置网络命令,支持在服务器或软路由上作为长期稳定运行的后台服务。

环境要求

Python 版本:>= 3.10

依赖管理工具:建议使用 Poetry

安装步骤

克隆项目到本地后,进入项目目录并使用 Poetry 安装依赖环境:

git clone https://github.com/zHElEARN/csust-login.git
cd csust-login
poetry install

配置文件

项目依赖环境变量进行身份验证与运行行为的控制。请在项目根目录创建一个 .env 文件,并写入相关配置。

必填项:

  • CSUST_USERNAME: 你的校园网账号
  • CSUST_PASSWORD: 你的校园网密码

可选项(以下列出的均为默认值,可根据具体网络环境自行覆盖):

  • DAEMON_EXEC_INTERVAL=20: 网络正常时,守护进程检测网络状态的时间间隔(秒)。
  • DAEMON_RETRY_INTERVAL=3: 网络异常或登录失败时的重试等待时间(秒)。
  • CHECK_NETWORK_TIMEOUT=5: 检测网络连通性时的请求超时时间(秒)。
  • LOGIN_TIMEOUT=10: 提交登录请求的超时时间(秒)。
  • NETWORK_RESET_CMD="": 当程序无法获取网关参数时,尝试执行的终端命令。留空则不执行。
  • NETWORK_RESET_TIMEOUT=20: 网络重置命令允许执行的最长时间(秒)。
  • NETWORK_RESET_WAIT=5: 执行网络重置命令后,等待网络接口恢复的时间(秒)。
  • ENABLE_LOGGING=True: 是否将运行日志写入文件。
  • LOG_DIR="logs": 日志文件的输出目录。
  • LOG_LEVEL="INFO": 日志记录级别(如 DEBUG, INFO, WARNING, ERROR)。

使用说明

通过 Poetry 安装并激活虚拟环境后,项目会在环境中注册两个命令行指令供直接调用。

单次登录

执行以下命令可以进行一次快速检测。如果当前已联网,程序会直接退出;如果未联网,程序会尝试获取重定向参数并进行一次登录尝试。

csust-login

启动常驻守护进程

执行以下命令启动自动守护模式。程序将持续在后台运行,按照 .env 中配置的间隔时间定期巡检。一旦发现断网,会自动发起登录请求。

csust-login-daemon

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

csust_login-0.1.0.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

csust_login-0.1.0-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file csust_login-0.1.0.tar.gz.

File metadata

  • Download URL: csust_login-0.1.0.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.13.9 Darwin/25.3.0

File hashes

Hashes for csust_login-0.1.0.tar.gz
Algorithm Hash digest
SHA256 cf96b52f27a02c427e35e853d7566198d35c3cb6c18d2cc85536efbc1d5f044b
MD5 17040fd12c5aec2d90845e3c758f29c5
BLAKE2b-256 ad6f052b254021b36cd73cecf55a51f162c5582e5ebb99a9003f7b1d6e7fe0f1

See more details on using hashes here.

File details

Details for the file csust_login-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: csust_login-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.13.9 Darwin/25.3.0

File hashes

Hashes for csust_login-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 046427e755d90000ff79e96ee5eb524d81e3d18de10bfcbd7603763ffefa7795
MD5 0770b6f215cac93de4bae0cf45d1e12a
BLAKE2b-256 3ce493761d6fc9f87f333df10d663f2eb4afa376043ac6440bfc246227528ca6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page