# AutoLogon **Repository Path**: bwstudio/auto-logon ## Basic Information - **Project Name**: AutoLogon - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-18 - **Last Updated**: 2025-10-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # autoLogon - 自动登录应用 ## 项目简介 autoLogon是一个自动化网站登录工具,可以帮助用户自动登录多个网站并维护登录状态。该应用通过配置文件管理网站信息,支持使用cookies维持登录会话,并能自动保存和更新cookies。 ## 主要功能 - 自动打开配置的多个网站并设置cookies - 支持cookies管理,自动保存和更新会话信息 - 可自定义保持登录时间 - 支持自动退出浏览器功能 - 完整的日志记录系统 ## 项目结构 ``` autoLogon/ ├── main.py # 应用主入口 ├── login_manager.py # 登录管理器 ├── config.py # 配置管理器 ├── logger_config.py # 日志配置 ├── config.json # 配置文件 ├── requirements.txt # 依赖列表 └── log/ # 日志文件夹 ``` ## 核心文件说明 ### main.py 应用的主入口文件,包含`AutoLoginApp`类,负责初始化各个管理器并协调它们的工作流程,包括加载配置、处理网站列表、执行登录操作等。 ### login_manager.py 登录管理器,封装了与浏览器相关的操作,负责网站登录、cookies设置与获取、保持登录状态等功能。使用DrissionPage库实现浏览器自动化。 ### config.py 配置管理器,负责加载、保存和管理应用配置,包括网站列表、浏览器路径等信息。 ### logger_config.py 日志配置模块,设置全局日志记录器,支持文件和控制台双重输出。 ### config.json 应用配置文件,使用JSON格式存储,包含以下主要配置项: - `sites`:网站配置列表 - `browser_path`:浏览器可执行文件路径 ## 配置文件格式 ```json { "duration": 30, "AutoQuit": true, "sites": [ { "name": "网站名称", "url": "网站URL", "cookies": [ { "name": "cookie名称", "value": "cookie值", "domain": "域名", "path": "/", "expires": 0, "secure": false, "httpOnly": false } ] } ] } ``` **配置项说明**: - `duration`: 保持登录状态的时间(秒) - `AutoQuit`: 是否在完成后自动退出浏览器(true/false) - `sites`: 网站配置列表,每个网站包含: - `name`: 网站名称(用于标识网站) - `url`: 网站URL地址 - `cookies`: cookies列表,用于自动登录 ## 安装依赖 使用以下命令安装项目依赖: ```bash pip install -r requirements.txt ``` ## 使用方法 1. 确保已安装所有依赖 2. 配置`config.json`文件,添加需要自动登录的网站信息 3. 运行主程序: ```bash python main.py ``` ## 工作流程 1. 加载配置文件 2. 为所有配置的网站创建标签页并访问URL 3. 为每个网站设置cookies(如果配置了) 4. 保持登录状态指定时间(根据配置的duration) 5. 获取所有页面更新后的cookies 6. 保存更新后的cookies到配置文件 7. 根据AutoQuit配置决定是否自动关闭浏览器 ## 注意事项 - 确保浏览器路径正确配置,默认使用Edge浏览器 - 配置文件中的`duration`参数表示处理每个网站时的延时时间(秒),默认30秒 - 首次运行时,应用会为没有cookies的网站创建空的cookies配置 - 日志文件保存在`log`目录下,按日期命名 ## 故障排除 - 如遇浏览器启动失败,请检查`browser_path`配置是否正确 - 如遇登录失败,检查网站URL是否正确,以及cookies格式是否符合要求 - 查看日志文件了解详细的错误信息 ## 扩展建议 - 增加对更多浏览器的支持 - 添加自动识别登录状态的功能 - 实现定时任务功能,定期执行自动登录 - 添加图形用户界面进行配置管理