微元素自动答题

微元素自动答题脚本

< Feedback on 微元素自动答题

Review: Good - script works

§
Posted: 29-04-2021
Edited: 29-04-2021

作者写得真棒!
不过我在这里提个小建议!因为我使用的时候发现了一些问题,有一些题目因为开头有着中文方括号【】,作者的代码中将它们替换为了英文方括号[]
不过似乎,这样会出现一些bug,比如有一些题目是无法处理“显示没有这个题目”,出现这样的情况,主要是因为网上找的题目源,很多题目都采用了中文方括号【】。(我用爬虫爬了很多微元素的题目下来,没有去处理中文方括号,所以题目源date依然是中文方括号)
在作者的源码中,如果我们添加的题目源是中文方括号,而用js检索下来的题目虽然也是中文方括号,就是这句代码“q = q.replaceAll('【', '[').replaceAll('】', ']').trim();”却把题目的中文方括号改成英文的,这时候就会出现题目匹配不到的情况(不是没有题目,而是js在网页中拿下来的题目的中文方括号被改成英文的了,而题目源data中的对应题目的括号依然是中文方括号【】,这样子就会出现警告“没有找到答案”,其实不是没有答案,而是没有题目)
所以建议:
①可以把这句代码注释掉,即在q前面加//就可以(也可以直接删掉这句话):q = q.replaceAll('【', '[').replaceAll('】', ']').trim();
②可以选择在if(q.indexOf(d[0]) !== -1)代码,即题目搜索的for循环内题目判断前添加一句:d[0].replaceAll(" ", '').replaceAll('【', '[').replaceAll('】', ']').trim();
建议用①,因为根据在网上找的数据源data,可以知道,绝大多数题目都采用原格式,即中文方括号【】,所以括号替换这步不是那么必要,建议用①比较省事

§
Posted: 07-05-2021

谢谢你的反馈。
关于中文括号问题,因为题库的题目经常更新,但格式不一。加上这些答案是从网上找过来的,所以为了最大兼容效果和节省时间我都做了一些替换处理。
你可以试试最新的版本,基本很少出现找不到答案这个问题了。

Post reply

Sign in to post a reply.