home1019
This commit is contained in:
@@ -6,12 +6,11 @@ autoLogon是一个自动化网站登录工具,可以帮助用户自动登录
|
|||||||
|
|
||||||
## 主要功能
|
## 主要功能
|
||||||
|
|
||||||
- 自动登录配置的多个网站
|
- 自动打开配置的多个网站并设置cookies
|
||||||
- 支持cookies管理,自动保存和更新会话信息
|
- 支持cookies管理,自动保存和更新会话信息
|
||||||
- 可自定义每个网站的保持登录时间
|
- 可自定义保持登录时间
|
||||||
- 支持自定义浏览器路径
|
- 支持自动退出浏览器功能
|
||||||
- 完整的日志记录系统
|
- 完整的日志记录系统
|
||||||
- 配置文件热更新
|
|
||||||
|
|
||||||
## 项目结构
|
## 项目结构
|
||||||
|
|
||||||
@@ -50,7 +49,7 @@ autoLogon/
|
|||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"duration": 30,
|
"duration": 30,
|
||||||
"browser_path": "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe",
|
"AutoQuit": true,
|
||||||
"sites": [
|
"sites": [
|
||||||
{
|
{
|
||||||
"name": "网站名称",
|
"name": "网站名称",
|
||||||
@@ -71,6 +70,14 @@ autoLogon/
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
**配置项说明**:
|
||||||
|
- `duration`: 保持登录状态的时间(秒)
|
||||||
|
- `AutoQuit`: 是否在完成后自动退出浏览器(true/false)
|
||||||
|
- `sites`: 网站配置列表,每个网站包含:
|
||||||
|
- `name`: 网站名称(用于标识网站)
|
||||||
|
- `url`: 网站URL地址
|
||||||
|
- `cookies`: cookies列表,用于自动登录
|
||||||
|
|
||||||
## 安装依赖
|
## 安装依赖
|
||||||
|
|
||||||
使用以下命令安装项目依赖:
|
使用以下命令安装项目依赖:
|
||||||
@@ -92,15 +99,12 @@ python main.py
|
|||||||
## 工作流程
|
## 工作流程
|
||||||
|
|
||||||
1. 加载配置文件
|
1. 加载配置文件
|
||||||
2. 遍历处理每个网站:
|
2. 为所有配置的网站创建标签页并访问URL
|
||||||
- 从配置中获取cookies(如果有)
|
3. 为每个网站设置cookies(如果配置了)
|
||||||
- 启动浏览器并访问网站
|
4. 保持登录状态指定时间(根据配置的duration)
|
||||||
- 设置cookies(如果提供)
|
5. 获取所有页面更新后的cookies
|
||||||
- 保持登录状态指定时间
|
6. 保存更新后的cookies到配置文件
|
||||||
- 获取并更新最新cookies到配置
|
7. 根据AutoQuit配置决定是否自动关闭浏览器
|
||||||
- 关闭当前浏览器页面
|
|
||||||
3. 保存更新后的配置
|
|
||||||
4. 关闭浏览器
|
|
||||||
|
|
||||||
## 注意事项
|
## 注意事项
|
||||||
|
|
||||||
|
|||||||
@@ -53,15 +53,18 @@ autoLogon/
|
|||||||
|
|
||||||
### 5.2 登录管理器 (login_manager.py)
|
### 5.2 登录管理器 (login_manager.py)
|
||||||
|
|
||||||
**功能**:负责浏览器的初始化、网站登录、cookies管理和会话维护。
|
**功能**:负责浏览器的初始化、网站访问、cookies管理和会话维护。
|
||||||
|
|
||||||
**主要类和方法**:
|
**主要类和方法**:
|
||||||
- `LoginManager`: 登录管理类
|
- `LoginManager`: 登录管理类
|
||||||
- `__init__()`: 初始化登录管理器
|
- `__init__()`: 初始化登录管理器
|
||||||
- `login(site_url, cookies=None)`: 登录网站,支持设置cookies
|
- `run()`: 从配置文件读取网站信息,为每个网站新建标签页并加载cookies
|
||||||
- `maintain_login(duration=120)`: 保持登录状态指定时间
|
- `save_cookies()`: 获取所有页面的cookies并保存到配置文件
|
||||||
- `save_cookies()`: 获取所有页面的cookies
|
- `get_duration()`: 获取配置的持续时间
|
||||||
- `close()`: 关闭浏览器页面
|
- `close(quit_browser=None)`: 关闭浏览器页面和实例
|
||||||
|
- `_add_page_metadata(page, name, url, cookies=None)`: 添加页面元数据
|
||||||
|
- `_set_cookies_to_page(page, cookies, site_name)`: 设置cookies到页面
|
||||||
|
- `_get_page_cookies(page, site_name, page_url=None)`: 获取页面cookies
|
||||||
|
|
||||||
### 5.3 日志配置器 (logger_config.py)
|
### 5.3 日志配置器 (logger_config.py)
|
||||||
|
|
||||||
@@ -84,25 +87,25 @@ autoLogon/
|
|||||||
**主要流程**:
|
**主要流程**:
|
||||||
1. 初始化配置管理器和登录管理器
|
1. 初始化配置管理器和登录管理器
|
||||||
2. 加载配置文件
|
2. 加载配置文件
|
||||||
3. 遍历处理每个网站配置
|
3. 调用login_manager.run()方法处理所有网站
|
||||||
- 获取网站URL和cookies信息
|
- 为每个网站创建标签页并访问URL
|
||||||
- 登录网站
|
- 设置cookies(如果有)
|
||||||
- 保持登录状态指定时间
|
- 等待页面加载完成
|
||||||
- 获取并更新cookies
|
4. 获取配置的持续时间并等待指定时间
|
||||||
4. 保存更新后的配置到文件
|
5. 获取并保存所有页面更新后的cookies
|
||||||
5. 关闭浏览器资源
|
6. 根据配置决定是否自动关闭浏览器
|
||||||
|
|
||||||
## 6. 配置文件格式 (JSON)
|
## 6. 配置文件格式 (JSON)
|
||||||
|
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"duration": 30,
|
"duration": 30,
|
||||||
"browser_path": "C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe",
|
"AutoQuit": true,
|
||||||
"sites": [
|
"sites": [
|
||||||
{
|
{
|
||||||
"name": "网站名称",
|
"name": "网站名称",
|
||||||
"url": "网站URL",
|
"url": "网站URL",
|
||||||
"cookies": [
|
"cookies": [
|
||||||
{
|
{
|
||||||
"name": "cookie名称",
|
"name": "cookie名称",
|
||||||
"value": "cookie值",
|
"value": "cookie值",
|
||||||
@@ -119,12 +122,12 @@ autoLogon/
|
|||||||
```
|
```
|
||||||
|
|
||||||
**配置项说明**:
|
**配置项说明**:
|
||||||
- `duration`: 处理每个网站时的延时时间(秒),默认30秒
|
- `duration`: 保持登录状态的时间(秒)
|
||||||
- `browser_path`: 浏览器可执行文件路径(可选)
|
- `AutoQuit`: 是否在完成后自动退出浏览器(true/false)
|
||||||
- `sites`: 网站配置列表
|
- `sites`: 网站配置列表
|
||||||
- `name`: 网站名称
|
- `name`: 网站名称(用于标识网站)
|
||||||
- `url`: 网站URL
|
- `url`: 网站URL地址
|
||||||
- `cookies`: cookies列表,每个cookie包含完整信息(name, value, domain等)
|
- `cookies`: cookies列表,用于自动登录
|
||||||
```
|
```
|
||||||
|
|
||||||
## 7. 依赖安装
|
## 7. 依赖安装
|
||||||
|
|||||||
Reference in New Issue
Block a user