分类下相关文章
2022-07-06 · 阅读 1895 · 字数 1407
帮媳妇实现了一个继续教育考试自动答题的功能。测试了一下效果还可以。 比自己网上百度搜素答案方便多了,否则自己查一遍得半个小时。 多选题自动选择 多选题漏选的原因分析 最后一题时,计数还在涨 本身 interval 在同一个题目页面内不断执行。 解决方案,答题后,clear interval。 分情况来看,如果最后一题没有答案,则 no answer 涨,有答案,has answer 涨。 网络卡顿造成的多选漏选原因: 根本原因,每个题目都是一个独立的页面,需要等待服务器返回。于是点击下一题后,如果两秒内题目没有刷出来,就会再执行一次答题过程。而多选题的特殊之处就在于,再次点击会导致勾选被取消。 ...
2021-11-28 · 阅读 1016 · 字数 454
待定,确认是否有效再说。 不过、提交后要刷新一下才能显示 支付中:已提交 未支付:未提交 多学年的账号需注意 在导入模板里把这个排序值也帮我加一下 todo [x] 选课学员表修改,增加两个字段,一是是否已支付 payed,二是各学校的订单金额 money [x] go model 增加字段 [x] go 更新学员是否已支付的接口。TmUpdateUser2Pay [x] Excel 导出时,增加字段 [x] Excel 导入模板,增加 rank 字段 [x] 改成6秒。昨天改成6秒以后,今天300多个订单,有三十个不成功的 [x] antd pro 增加字段 [x] 插件,在点击支付之 ...
2021-11-19 · 阅读 719 · 字数 218
继续 tampermonkey 实现,感觉比较简单,一个晚上差不多就能实现。 选课插件需求 那个选课插件、如果做一个最简单的、就是把指定的课程加到购物车就行了、可好做?不需要提交订单 手工登录就行 只做2021年的 分二类人:一类人员选第二套课程;二类学员选第一套课程 三年都做更好。其他2年的少、我手工选也行 原有逻辑的调整 done 复制一份,重命名为 “_指定课程” done 保留收集 done 去掉网校选择 done 去掉个人信息处理 done 去掉提交订单 done 去掉退出登录 保留年份:map 年份 & 分类,对应不同课程 保留分类:一类、二类 ...
2021-10-11 · 阅读 1009 · 字数 476
扫描所有课程,记录其所属的网校。前面几节课随机选,快超过学时了,就选几个学时少的课程。 目的是减少每次选课人工计算的时间。 界面上配置的规则有 学员类别 年度 哪个网校 年度主要是2019-2021年三年、 课程有2种情况的人员 一种人员公需课不低于15学时、专业课不低于30学时、在这上面、学时尽量别超的多、因为按学时付费 另一种人员公需课不低于10学时、专业课不低于20学时 添加执行逻辑 点击开始 如果没有选择三项,提示 过滤一轮所有课程,排除不符合条件的。 同时将符合条件的分为两个不同分类, 不同分类下再分为不同学校。 从符合条件的里面,随机抽取,直到满足学分 然后逐一添加课程 完成后 ...
2021-05-13 · 阅读 1525 · 字数 359
在用 tampermonkey 实现一个继续教育网校在线作业自动学习视频并答题的程序,一切都运行正常。 唯一遇到的是在答题时,题目是在一个 iframe 嵌 iframe 里的,此时脚本就没有触发执行。 非常诡异,只有这一个 iframe 没有触发,而其他的均触发了。 搞了近一个小时没有头绪,本以为是 tampermonkey 的限制,后来仔细看浏览器的网络请求,发现原理这个 iframe 做了两次 302 重定向跳转,怪不得没有触发。 改成最终的跳转地址就可以自动答题了。 总结 不要只盯着 iframe 的 src 地址看,还得看网络请求里的真实地址,确认没有重定向。 技巧及坑 在福建和安徽 ...
2021-04-22 · 阅读 2101 · 字数 109
由于网校学习课程中的 PPT 总页数只能通过 iframe 中的数据才能获取到,所以只能处理 iframe。 tampermonkey 读取 iframe 中数据的操作要点 iframe src 路径加入 tampermonkey match iframe 的 html 也不一定是即时加载的,所以有必要定时或者 set timeout 读取数据 iframe 与主页面的数据共享 GM_set GM_get 来实现数据共享。 ...
2022-07-06 · 阅读 4611 · 字数 103
在写一个继续教育网校自动考试答题的程序,但是我的台式机上没有摄像头,就无法开始考试。 解决方法 使用 vcam 软件,即虚拟摄像头。找一张图片,或者视频导入 vcam,这时就可以开始考试了。 注意,需要使用360安全浏览器,或者其他国产浏览器。因为谷歌浏览器已经不再支持 flash,而考试摄像头功能就是 flash 做的。 同样适用于网考摄像头没有正常启用的情况。 ...
2021-04-05 · 阅读 2310 · 字数 225
继续教育网校在线作业做到自动答题其实很容易。 答案收集 只需要使用 tampermonkey,每次提交在线作业,然后收集题干和答案, 使用 gm_setValue 保存到 Chrome 的本地数据存储 levelDB 中即可。 key 为题干,value 为答案。这里的答案不做格式转换,方便导出时的可读性。 考题自动找答案 遍历所有考题,gm_getValue 获取答案即可。 注意,模拟点击的时候,设置 timeout,否则后台服务器响应不过来,容易造成答案丢失。 特别是多选题,容易出现此问题。 判定是否合格 全局设置可接受的错题数,e.g. 1题、2题。 实际上,经测试无此必要,即便要达到满 ...
2021-04-05 · 阅读 4482 · 字数 225
在做一个成人自考网校的自动学习、挂学时插件,但是在提交问题答案的时候,会弹出一个 alert 窗口,点击确定按钮之后,才能提交。 alert 窗口与普通的网页还是有区别的,因为无法在浏览器 console 中查看,所以也就无法采用 document.querySelector 的方式进行自动 click 处理。 所以,要实现自动答题,就得能绕过这个 alert 确认窗口。 实现方法 覆盖 window.alert 方法: @grant unsafeWindow unsafeWindow.alert = function(){return false}; window.alert ...
2021-02-02 · 阅读 3214 · 字数 162
使用 tampermonkey 在当前网页中添加了一个按钮,用于手动触发自动化逻辑。 <button id="tm_btn" onclick="do_something()">开始抢购</button> do_something 函数,是我在 tampermonkey 脚本中定义的函数。 但是,点击按钮之后,报错: Uncaught ReferenceError: do_something is not defined at HTMLButtonElement.onclick 为何会找不到函数定义 原因是,tamper ...
2021-01-30 · 阅读 2223 · 字数 431
application/octet-stream 版本的缺陷: 无法增加多余参数。例如,我想顺便传递用户名,就没法增加字段了 搜了半天没找到 Spring Boot 读取 application/octet-stream 的实现。。。 所以干脆想尝试 multipart/form-data 版。 Java Spring Boot 如何获取 application/octet-stream 二进制数据 { "timestamp": "Feb 1, 2021, 03:18:55 PM", "status": 415, ...
2021-01-30 · 阅读 3098 · 字数 800
例如,我想将 https://www.sunzhongwei.com 网页中下载到的 Excel 文件,上传到其他服务器。这里以 http://localhost:5000 为本地测试环境。 tampermonkey 中是否可以使用 fetch / jQuery ajax 还是必须使用 GM_xmlhttpRequest ? 测试了一下,用 fetch 确实不行,必须使用 GM_xmlhttpRequest 。 以下是使用 fetch 的报错信息,估计使用 jquery ajax 也是同样的结果。 Access to fetch at 'http://localhost:5000/' from ...
2021-01-02 · 阅读 2025 · 字数 275
修改几年前给媳妇写的一个 tampermonkey 自动挂会计网校学时的插件。由于只是网校的页面做了些许修改,其实代码需要调整的地方不多。但是发现已经看不懂了,逻辑混乱,无从下手。 赶上元旦假期,时间充裕,所以思考了一下,怎样组织 tampermonkey 的代码,可读性更高,最好能形成代码规范,以后再调整时,可以瞬间秒懂。 代码结构 分成三大部分,之间用注释块隔开。 全局配置变量 自动逻辑。引入类 route 机制,多页面逻辑清晰。 公用函数 多文件还是单文件 例如要在一个网站里,多个页面间跳转,还是单文件比较好。原因: 逻辑清晰 函数可复用 可复用代码 还是做 vim snippe ...
2020-06-21 · 阅读 3943 · 字数 426
在使用 tampermonkey 挂学时时,遇到一个问题。课程列表页与视频页所属不同二级域名,导致这两个页面对应的 tm 脚本无法共享 cookie。 在查解决方案时,查到 tm 自带的 gm set get value 函数,可以跨域共享数据,但前提是读写都在一个 tm 脚本中。 参考: http://greasemonkey.win-start.de/advanced/gm_getvalue.html Data stored with GM_setValue and retrieved with GM_getValue are similar to browser cookies, bu ...
2020-06-13 · 阅读 3872 · 字数 419
在写 tampermonkey 网页工具时,经常会用 console log 来输出状态日志,方便了解进度,或者调试。 但是对于普通用户来说,这不太友好。还是能将进度信息显示在页面上比较直观。特别是对于用来自动挂学时的插件来说,没有这个状态显示,你很难知道插件是否因为页面改版导致挂了。。。 所以参考了一个网上的脚本,写了一个测试程序。功能是,记录在当前页面停留了多长时间。 以百度首页为例,这个悬浮框状态面板会显示在页面右下角,每秒更新。 这个 div 还是透明的,也不影响正常浏览。 测试代码 // ==UserScript== // @name test_status_win ...