A lightweight, ONNX-powered session handshake utility for VTOP VIT Bhopal.
Project description
VTOP Session Handshake Utility
A lightweight, high-reliability automation utility for bypassing CAPTCHA-protected authentication on the VTOP portal.
Technical Overview
This utility performs an automated "handshake" with the VTOP VIT Bhopal (https://vtop.vitbhopal.ac.in/vtop/) server to acquire an authenticated session.
[!NOTE] This utility is designed and tested exclusively for the Student Login portal.
- Model and inference engine require only ~40-60MB of RAM, making it ideal for low-cost VPS and server-side deployment.
- 5-stage retry loop. On any failure, a hard reset is performed—clearing cookies, rotating User-Agents, and re-fetching the login page.
- Typical handshake takes 2.5 to 4 seconds depending on network latency.
- Designed as a library-first utility with a custom exception hierarchy for robust programmatic error handling.
- Since the ONNX model runs locally, the project has zero external API dependencies and requires no API keys.
Installation
- Install Python 3.12+.
- Install the package locally:
pip install .
Integration
CLI Usage
Run the utility to acquire a session-active CSRF:
python -m vtop_auth_lite <USERNAME> <PASSWORD>
Programmatic Usage
from vtop_auth_lite.session import VTOPSessionManager
from vtop_auth_lite.auth import VTOPAuth
session = VTOPSessionManager()
auth = VTOPAuth(session)
if auth.login("username", "password"):
# session is now authenticated
res = session.fetch("GET", "/vtop/content")
Output:
- Success: Prints the 64-character CSRF Token.
- Failure: Prints a specific error code (e.g.,
AuthenticationFailedError) and exits with code 1.
Errors & Troubleshooting
| Error | Cause | Solution |
|---|---|---|
AuthenticationFailedError |
Invalid credentials. | Verify your VTOP username and password. |
CaptchaSolverError |
AI inference failure. | Ensure model is inside vtop_auth_lite/models/. |
NetworkConnectivityError |
VTOP is down or blocked. | Check your internet; VTOP may be in maintenance. |
UnexpectedError |
Unhandled system crash. | Check handshake.log for a detailed traceback. |
If you encounter a persistent breaking error, please submit an issue with the
contents of handshake.log.
Repository Structure
vtop_auth_lite/: The core package (Auth, Session, OCR, and ONNX models).pyproject.toml: Package build configuration.
Developed for research, development, and educational purposes.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vtop_auth_lite-0.1.0.tar.gz.
File metadata
- Download URL: vtop_auth_lite-0.1.0.tar.gz
- Upload date:
- Size: 5.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ad63af76b29483586e90c1198f3e71e684fbe2d9d96275a4f03b5367539b2dbd
|
|
| MD5 |
02641412f6fa835a7758f8ca7a04bd71
|
|
| BLAKE2b-256 |
3e44cb7cb85e21c04040f5f79d34333791c4af86a2f866c06b926cfe815dcf5f
|
Provenance
The following attestation bundles were made for vtop_auth_lite-0.1.0.tar.gz:
Publisher:
publish.yml on osmium1/vtop-auth-lite
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vtop_auth_lite-0.1.0.tar.gz -
Subject digest:
ad63af76b29483586e90c1198f3e71e684fbe2d9d96275a4f03b5367539b2dbd - Sigstore transparency entry: 1059803562
- Sigstore integration time:
-
Permalink:
osmium1/vtop-auth-lite@36eb23401b9150d1339804862ad6f3f86921978e -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/osmium1
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@36eb23401b9150d1339804862ad6f3f86921978e -
Trigger Event:
release
-
Statement type:
File details
Details for the file vtop_auth_lite-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vtop_auth_lite-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5360f48b66bfd45c565edc0262e6b4b73c970b810f19495c8505b86b40b8cfd
|
|
| MD5 |
621c2fdbc324ea698e3888ee9a0e3332
|
|
| BLAKE2b-256 |
d463ae5a0f84db600dd874fb7fe48c3b6c36fbb26f8912364aec3ff93b8a382b
|
Provenance
The following attestation bundles were made for vtop_auth_lite-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on osmium1/vtop-auth-lite
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vtop_auth_lite-0.1.0-py3-none-any.whl -
Subject digest:
e5360f48b66bfd45c565edc0262e6b4b73c970b810f19495c8505b86b40b8cfd - Sigstore transparency entry: 1059803567
- Sigstore integration time:
-
Permalink:
osmium1/vtop-auth-lite@36eb23401b9150d1339804862ad6f3f86921978e -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/osmium1
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@36eb23401b9150d1339804862ad6f3f86921978e -
Trigger Event:
release
-
Statement type: