谈谈“亿方教材助手”背后的故事

2023年7月,夏日炎炎。我从北京旅游回到泰安以后,用电脑打开了久违的暑假作业文档,开始制作那些可以打印的手抄报等创意作业,但是我注意到了作业文档里面的一项特别的作业“抄写下一学期语文课本中需要背诵的古诗词”,一下把我干蒙了。要知道,我的手机上有“古文岛”这款软件,是“古诗文网”开发的,按理来说古文都很全的,但是它也不知道下一学期语文学啥古诗词,所以我只能去找电子课本。

我按照我原来的经验,打开了国家中小学智慧教育平台的教材栏目,由于是7月,处于课本冷却期,官网上暂时撤下了一些统编版电子课本,所以我只能另辟蹊径,曲线救国。我按照我原来下载山东教育出版社鲁教版电子课本的经验,搜索了人民教育出版社的官网,发现了也有“教材”栏目,但是也把五四制课本的链接给撤下了,但是按照我的经验,五四制和六三制课本内容基本相同,尤其是古文部分,于是我就找到了六三制课本的文档,打开以后发现可以查看,但是无法下载,禁用了F12,禁用了右键,甚至禁用了很多可以找到的下载方法,但是,他没有禁用Ctrl+Shift+I!于是我就用这个快捷键打开了DevTools,使用审查元素发现了他的课本接口格式。我立马打开了ChatGPT,要求他给我写一个根据链接格式爬课本的Python脚本,眼看刷的一声,他写完了代码。我打开了IDLE,粘贴了这段代码并运行,看到控制台中输出的“第XX页课本下载完成”,我顿时满心欢喜,静待下载完成以后,筛选出古诗词部分,把图片传输到了微软的To Do,以便在我的小米平板上查看。

谈谈“亿方教材助手”背后的故事

眼看我的作业已经写完,我也愈发感到没有事情干,于是我对这段代码起了兴趣,先是给它加入了GUI,研究了官网链接和课本API的对应关系,加上了类似Parsevideo的链接解析,加入了目录选择,顿时感觉很有成就感。

谈谈“亿方教材助手”背后的故事

我想起了我之前下载国家中小学智慧教育平台课本的经验,它调用了PDF控件,导致我每一次查看课本,都会吊起我本地的IDM进行下载,我研究了下载链接和官网链接的对应思路,加入了针对r3-ndr接口的解析,并暂定名为“人民攻摄”,于是,“亿方教材助手”便初具雏形。之后我和ChatGPT联合开发,加入了识别官网教材标题和去除水印的功能,但是不料,人民教育出版社的课本标题可以正常解析,但是国家中小学智慧教育平台的课本标题是动态加载,于是ChatGPT知道以后,给出的修改方案是使用selenium控制浏览器查看标题,我却将这个方案一票否决了,因为这不符合我对一个针对教职工的小而美的程序的幻想。我只好求助于抖音“玄离199的群”,不料也没有人回复。我否决这一方案,体现了我对老师使用的电脑环境的充分理解。面对教师办公室复杂的系统环境,我无法确保每一个教师的电脑都可以正常调用浏览器进行标题的解析,于是我急中生智,将智慧教育平台的课本标题改成了当前年月日时分秒,这样子就可以完美的曲线救国。

谈谈“亿方教材助手”背后的故事

眼看暑假结束,初三上学期(五四制)开始了,我逐渐没有这么多的时间维护这个程序,它就静静的躺在我的电脑开发文件夹中,停留在了八月底的日期。

谈谈“亿方教材助手”背后的故事

时间如白驹过隙,期末考试来临了。我由于不想过一个没有成绩的寒假,就带病发烧参加了期末考试,由于发烧严重,再加上我长期的鼻炎,我的鼻子在发烧期间一直有一种如火中烧的感觉,也导致我每考完一场试就得去厕所用凉水洗鼻子缓解疼痛。终于,考试被我煎熬完了,在我从考场回教室的路上,我碰见了我的物理老师,他问我:“你寒假里还编程吗”,要知道,我之前就因为物理老师的NB物理实验到期,我当场在班里的希沃一体机下载了ClassIn,让老师用上了免费的NB物理实验,也让老师知道了我可能会编程。老师的这一句话,让我暂时忘记了鼻子的疼痛,询问老师干什么,老师说,叫我家长加他微信,他给我家长发一个山东省电教馆的科技宣传周的活动,叫我往上投稿程序,我同意了。

回到家的路上,我叫家长添加了老师的微信,老师也发送了文档,其中“计算思维类”投稿项目刚好符合我这一个程序的标准,我就在寒假抽了几天修复bug,不料我的技术水平有限,没解决掉人教社下载进度条不显示和无法读取智慧教育平台的教材标题的问题,我就在抖音“玄离199的群”询问有没有Python大佬帮我解决一下问题,却没有引来回复,只有UP主玄离199把我发的这段话来回复制粘贴玩了一阵子。我想到了酷安,毕竟我是酷安老用户,于2019年11月注册,体验过酷安曾经的大唐盛世(那个酷安账号在用模块去广告以后黑号了,等了几个月恢复了以后因为我2022年用酷安老版本不显示广告,又黑号了,于是我手欠注销账号卡bug号没了,现在用新号)。我就在酷安发帖子询问,果然找到了有志之人回答了我的问题。他的解决方案是修复了我程序里面threading调用的错误,并提供了一个解析教材标题的JSON接口,至此我的程序就完美了。我欣喜若狂,将程序上传到了GitLab,并打包成了EXE,填好了附表,不料,故事还没有结束。

谈谈“亿方教材助手”背后的故事

开学以后,物理老师叫我把程序拷给之前的信息老师,我却因为程序无法兼容Windows7又拖欠了几天,终于我使用虚拟机加Python最后一个兼容Windows7的版本适配成功。我本以为故事终于可以结束了,结果她说,去年投稿要求录制演示视频,今年为了保险起见也要录制,我回家以后打开了虚拟机,准备录制,选择了一个没有下载过的语文课本,粘贴到了我的程序,不料,提示下载失败。我怀疑是我的API接口出现了问题,我就仔细核对,发现部分课本是“私域课本”,API接口为r2-ndr开头,并设置了Allowed-Origin,导致我的程序无法下载。我就在必应搜索如何解决这一问题,结果只搜到了针对selenium爬虫的安装浏览器插件的办法,没有找到用requests的办法,我就继续搜索,搜索到可以删除链接中的-private下载,测试成功,我想把它加进程序,提供两条线路,但是经过我的反复测试,发现并没有必要。于是我就修改了这一API,破解了这一限制。

谈谈“亿方教材助手”背后的故事

经过我一段时间的考察,发现网上很多智慧教育平台的下载器都不能做到粘贴链接解析,只能在他的工具重新选择一遍课本,并不人性化,而且如果是在教材冷却期,这一招也没法用,只能用人教社的办法下载。然而我的程序可以做到粘贴链接解析课本,做到了高度人性化。而且,为了方便很多电脑小白,我还贴心的使用NSIS打包了这一程序,不料getcwd就不管用了,默认的下载目录变为了Program Files目录。这对于很多电脑小白来说简直是噩梦。我就研究了一下保存到桌面,但是网上的教程是在当前用户目录下追加desktop实现获取桌面路径,这一方案也被我一票否决,因为很多教职工使用封装版本系统,默认会修改这一目录,也可能会自己修改这个目录,导致目录不准确,我就取了一个折中的方案,保存到C盘单独的文件夹,因为有些电脑连D盘都没有,所以为了保险起见这么做。

谈谈“亿方教材助手”背后的故事

针对我的开源项目,UP主“玄离199”提出的建议是,一般Python开源项目写清楚readme,教给用户怎么pip就行了。但是我觉得这样子做并不好,我非倒是得给它编译好,打包成EXE,还得兼容Windows7,打包成安装包,以最大程度的保证用户不会卡在安装这一步。而且经过我的考察,我们学校办公室使用的一体机很多是32位操作系统,所以我也有了后续添加32位支持的想法。

谈谈“亿方教材助手”背后的故事

针对某些老师认为的“我C盘满了不能再安软件了”,我也计划了开发一个网页版课本解析,以更大限度的降低软件使用难度。至于软件为什么叫“亿方”,是因为我认为,解决很多电脑问题,办法总比困难多,所以亿方就成为了我针对老师办公室运维经验分享的UGC平台账号的名称。我希望,能让更多老师体验到科技的乐趣。

写到这里,我不禁想起了某些同行开发的一些软件,为了自己能赚钱,非得整一个慢的要死的网盘,而且对外宣称“三年更新上百次”,我的评价是,不但不这么搞,还得出个网页版,不用下载,一键“源神,启动”,不刷版本号,有bug绝对不发布,争取做业界的小而美。

今天就说到这里,我们有缘再见。

免责声明:本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。
THE END
分享
二维码
< <上一篇
下一篇>>
文章目录
关闭
目 录