Skip to content
/ bitsrun Public

A headless login / logout script for 10.0.0.55 at BIT. 北京理工大学 10.0.0.55 校园网登录登出的 Python 实现

License

Notifications You must be signed in to change notification settings

BITNP/bitsrun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bitsrun

Ruff Pre-commit PyPI Publish PyPI PyPI - Python Version PyPI - Downloads

A headless login / logout script for 10.0.0.55 at BIT.

Blazingly™ Fast Rust re-implementation of bitsrun available at spencerwooo/bitsrun, if you require or prefer a single compiled executable (or 🦀 Rust).

Install

You need at least Python 3.8. We recommend installing with pipx.

python3 -m pip install --user pipx
python3 -m pipx ensurepath

After which, install bitsrun with pipx.

pipx install bitsrun

Alternatively, you can download a self-contained executable from GitHub Releases if you are working from an environment that does not have internet access.

Usage

CLI

Check login status of your device.

bitsrun status

Usage: bitsrun status [OPTIONS]

  Check current network login status.

Options:
  --json / --no-json  Output in JSON format.
  --help  Show this message and exit.

Note: this is the output of bitsrun status --help.

Login or logout with your username and password.

bitsrun login

Usage: bitsrun login/logout [OPTIONS]

  Log into or out of the BIT network.

Options:
  -u, --username TEXT  Your username.
  -p, --password TEXT  Your password.
  -v, --verbose        Verbosely echo API response.
  --help               Show this message and exit.

Note: this is the output of bitsrun login/logout --help.

Credentials config

Create new file named bit-user.json:

{
    "username": "xxxx",
    "password": "xxxx"
}

This file should be put under the following directory:

  • Windows: %APPDATA%\bitsrun
  • macOS and Linux: ~/.config/bitsrun (Following the XDG spec)

On unix, set the file permission to 600, i.e., only read/writeable by the owner:

chmod 600 path/to/bit-user.json

Now you can simply call:

bitsrun login
bitsrun logout

Besides, a system-wide configuration file is supported, and the location also depends on your platform.

To list all possible paths for your system (including those only for backward compatibility), call:

bitsrun config-paths

Raycast script (macOS)

raycast screenshot

Import the two Raycast scripts from ./scripts and setup your config file in ~/.config/bit-user.json. The script uses /usr/bin/python3 by default, so you either need to install bitsrun with this Python interpreter or setup your own Python interpreter path in the script.

Developing

Create virtual environment and install deps:

python -m venv venv
source venv/bin/activate
pip install -e .

Running CLI entry:

python src/bitsrun/cli.py

Build:

pip install setuptools build
python -m build

Credits and related

License

WTFPL License