modified: __pycache__/get_info.cpython-310.pyc

modified:   demo.py
	modified:   get_info.py
	modified:   initialization.py
main
JesterHey 9 months ago
parent e8535d3ae0
commit 8f6a79872a

@ -1,8 +1,20 @@
from collections import * from DrissionPage import ChromiumPage
import json from DrissionPage.common import *
info = json.load(open('course_info.json','r')) from loguru import logger
cnt = Counter(info[k]['type'] for k in info.keys()) import subprocess
print(cnt) from get_info import login
cnt['必修'] = 1 # page = ChromiumPage()
less_10 = [k for k, v in cnt.items() if v < 10] # page.get('http://hnqmgc.17el.cn/')
print(less_10) # try:
# if page.ele('@onclick=cha()',timeout=3):
# page.ele('@onclick=cha()').click()
# # <img style="width: 25px;height: 25px;" src="/images/index/cha.png" alt="" srcset="">
# elif page.ele('tag:img@@style=width: 25px;height: 25px;',timeout=3):
# page.ele('tag:img@@style=width: 25px;height: 25px;').click()
# except BaseException:
# logger.error('不能进入课程页面')
# subprocess.run(["python", __file__])
# exit()
# page.ele('tag:a@@text():青马课堂').hover()
# page.ele('tag:a@@text():全部').click().for_new_tab()
login(first=True,init=True)

@ -5,10 +5,14 @@ import time
import json import json
from loguru import logger from loguru import logger
import subprocess import subprocess
from typing import *
# http://hnqmgc.17el.cn/grzx/ # http://hnqmgc.17el.cn/grzx/
# 单独实现登录操作 # 单独实现登录操作
def login(first:bool=True): def get_into_center(cpage:ChromiumPage):
cpage.ele('#login_btn').click()
cpage.ele('@value=进入个人中心').click()
def login(first:bool=True,init:bool=False):
if not first: if not first:
return return
# 先检查当前页面是否已经登录 # 先检查当前页面是否已经登录
@ -48,8 +52,8 @@ def login(first:bool=True):
logger.error('不能进入课程页面') logger.error('不能进入课程页面')
subprocess.run(["python", __file__]) subprocess.run(["python", __file__])
exit() exit()
page.ele('#login_btn').click() if not init:
page.ele('@value=进入个人中心').click() get_into_center(page)
def get_info(first:bool=True): def get_info(first:bool=True):
# 创建页面对象,并启动或接管浏览器 # 创建页面对象,并启动或接管浏览器
page = ChromiumPage() page = ChromiumPage()

@ -11,25 +11,51 @@ import time
from loguru import logger from loguru import logger
from get_info import get_info from get_info import get_info
from collections import * from collections import *
from get_info import login
def click_videoes(study_type:str) -> None:
'''
study_type:只能在如下选项中选择
1入党积极分子
2网络文明志愿者
3团学干部
4大学生心理健康教育
'''
# 由于各位学员的培训种类不同,这里交给用户输入
# 必修,选修,专栏学习是每人都要学习的,统一处理
def must_study():
pass
def elective_study():
pass
def column_study():
pass
# 读取课程数量信息 # 读取课程数量信息
def init():
'''
初始化检测是否需要进入视频一次页以及进行进入视频一次页操作
'''
# 获取课程数量信息
get_info() get_info()
class_info = json.load(open('course_info.json','r')) class_info = json.load(open('course_info.json','r'))
# 读取各个类别的课程数量 # 读取各个类别的课程数量
cnt = Counter(class_info[k]['type'] for k in class_info.keys()) cnt = Counter(class_info[k]['type'] for k in class_info.keys())
# 检测是否存在小于10的课程数量 # 检测是否存在小于10的课程数量
less_10 = [k for k, v in cnt.items() if v < 10] less_10 = [k for k, v in cnt.items() if v < 10]
def click_videoes():
'''
进入首页逐个点击相应视频,每个视频页面停留3秒后推出,并进入下一个视频
'''
pass
if not less_10: if not less_10:
# 直接进行刷课和检测 # 直接进行刷课和检测
pass return
else: else:
''' '''
回到首页,逐个点击相应视频,每个视频页面停留3秒后推出,并进入下一个视频 回到首页,逐个点击相应视频,每个视频页面停留3秒后推出,并进入下一个视频
结束调用get_info()函数更新课程数量信息 结束调用get_info()函数更新课程数量信息
''' '''
pass # 接管当前页面
page = ChromiumPage()
# 进入青马课堂页
login(first=True,init=True)
page.ele('tag:a@@text():青马课堂').hover()
page.ele('tag:a@@text():全部').click().for_new_tab()
click_videoes()
Loading…
Cancel
Save