fix: fix bug 修复了每周答题答错未能获取到提示信息时直接停止答题的bug

每个用户三十分钟未完成学习自动关闭,防止内存泄漏
This commit is contained in:
johlanse 2021-12-07 18:27:48 +08:00
parent e134c304e6
commit e35c4011cc
1 changed files with 16 additions and 8 deletions

View File

@ -122,7 +122,13 @@ func (c *Core) RespondDaily(cookies []Cookie, model string) {
return
}
tryCount := 0
for true {
label:
tryCount++
if tryCount >= 30 {
log.Panicln("多次循环尝试答题已超出30次自动退出")
}
if c.IsQuit() {
return
}
@ -213,29 +219,31 @@ func (c *Core) RespondDaily(cookies []Cookie, model string) {
// 获取答题帮助
openTips, err := page.QuerySelector(
`#app > div > div.layout-body > div > div.detail-body > div.question > div.q-footer > span`)
if err != nil {
log.Errorln("未获取到题目提示信息" + err.Error())
if err != nil || openTips == nil {
log.Errorln("未获取到题目提示信息")
return
goto label
}
log.Debugln("开始尝试获取打开提示信息按钮")
err = openTips.Click()
if err != nil {
log.Errorln("点击打开提示信息按钮失败" + err.Error())
return
goto label
}
log.Debugln("已打开提示信息")
content, err := page.Content()
if err != nil {
log.Errorln("获取网页全体内容失败" + err.Error())
return
goto label
}
log.Debugln("以获取网页内容")
err = openTips.Click()
if err != nil {
log.Errorln("点击打开提示信息按钮失败" + err.Error())
return
goto label
}
log.Debugln("已关闭提示信息")
tips := getTips(content)
log.Infoln("[提示信息]", tips)