重构版,支持多用户
This commit is contained in:
parent
610a6cd329
commit
a4ca62fe03
1
.gitignore
vendored
1
.gitignore
vendored
@ -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
|
||||||
|
@ -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}个')
|
||||||
|
|
35
README.md
35
README.md
@ -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
3
account.csv.example
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
username1,password1
|
||||||
|
username2,password2
|
||||||
|
username3,password3
|
Loading…
x
Reference in New Issue
Block a user