重构版,支持多用户

This commit is contained in:
Anyexyz 2023-12-18 12:55:24 +00:00
parent 610a6cd329
commit a4ca62fe03
4 changed files with 53 additions and 3 deletions

1
.gitignore vendored
View File

@ -26,6 +26,7 @@ share/python-wheels/
.installed.cfg .installed.cfg
*.egg *.egg
MANIFEST MANIFEST
account.csv
# PyInstaller # PyInstaller
# Usually these files are written by a python script from a template # Usually these files are written by a python script from a template

View File

@ -2,6 +2,7 @@ import json
import re import re
import time import time
import requests import requests
import csv
from utility import encrypt, cap_recognize from utility import encrypt, cap_recognize
def study(username,password): def study(username,password):
# 返回1:成功 # 返回1:成功
@ -62,10 +63,9 @@ def study(username,password):
study_url = f"https://m.bjyouth.net/dxx/check" study_url = f"https://m.bjyouth.net/dxx/check"
r = bjySession.post(study_url, json={"id": str(courseId), "org_id": int(nOrgID)}) # payload r = bjySession.post(study_url, json={"id": str(courseId), "org_id": int(nOrgID)}) # payload
if r.text: if r.text:
print(f'开始学习{title}') print(f'Unexpected response: {r.text}')
return 0 return 0
haveLearned = bjySession.get(learnedInfo).json() haveLearned = bjySession.get(learnedInfo).json()
if f"学习课程:《{title}" in list(map(lambda x: x['text'], haveLearned['data'])): if f"学习课程:《{title}" in list(map(lambda x: x['text'], haveLearned['data'])):
print(f'{title} 成功完成学习') print(f'{title} 成功完成学习')
@ -75,4 +75,15 @@ def study(username,password):
return 0 return 0
if __name__ == '__main__': if __name__ == '__main__':
study('16634486740','Anye20031003') # 读取account.csv配置文件格式为用户名,密码
success = 0
count = 0
with open('account.csv', 'r', encoding='utf-8') as f:
reader = csv.reader(f)
for row in reader:
count += 1
print(f'用户{count}: {row[0]}')
if study(row[0], row[1]):
success += 1
print(f'{count}个用户,成功{success}个,失败{count-success}')

View File

@ -1,2 +1,37 @@
# 北京青年大学习 # 北京青年大学习
> 注意:本项目仅供学习交流使用,请勿用于商业用途,否则后果自负。
## 简介
本项目是北京青年大学习的速刷程序,可以迅速完成学习任务。
## 使用方法
1. 安装Python3建议使用Python3.7-3.10版本,下载地址:[Python3.10](https://www.python.org/ftp/python/3.10.11/python-3.10.11-amd64.exe),版本过高可能会出现兼容性问题。
2. 安装依赖库,打开命令行,输入以下命令:
```
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
```
3. 配置账户信息,打开`account.csv.example`文件,按照格式填写账户信息,保存为`account.csv`
4. 运行程序,打开命令行,输入以下命令:
```
python Beijng_Daxuexi.py
```
5. 程序会自动完成学习任务,完成后会自动退出。
## 注意事项
1. 程序会自动识别当前学习任务是否完成,如果学习任务完成,程序会自动跳过学习任务。
2. 本程序只会完成最新的学习任务,不会完成题目,也不会完成旧的学习任务。
# 目录结构
- `account.csv`:账户信息文件(示例),用于配置账户信息。
- `Beijng_Daxuexi.py`:主程序文件,用于完成学习任务。
- `requirements.txt`:依赖库文件,用于安装依赖库。
- `README.md`:说明文件。
- `LICENSE`:许可证文件。
- `utility.py`:工具文件,用于提供工具函数。
## 致谢
本项目参考了以下项目:
- [startkkkkkk/Beijing_Daxuexi_Simple](https://github.com/startkkkkkk/Beijing_Daxuexi_Simple)
- [sml2h3/ddddocr](https://github.com/sml2h3/ddddocr)

3
account.csv.example Normal file
View File

@ -0,0 +1,3 @@
username1,password1
username2,password2
username3,password3