前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >为了方便查询疫苗批号,我用了一个周末做了个小程序

为了方便查询疫苗批号,我用了一个周末做了个小程序

作者头像
海哥@开发
发布2022-04-06 14:51:01
9430
发布2022-04-06 14:51:01
举报
文章被收录于专栏:海哥聊技术

近期我家娃进入了频繁疫苗接种期,平均每半个月都需要接种一剂疫苗。每次接种我都会认真核对疫苗本上、疫苗系统里、疫苗上,三者的批次号一致。在此基础上还会去中食药检核对下批次号状态,但是中食药检的官方网站上关于疫苗号的批次状态只有半个月左右一次的一个HTML页面,只能用ctrl+f进行一页一页的搜索,很是麻烦。我又去微信里看了看确实有几个批次号查询的小程序,但大多数据就停留在18年不再向后更新了。作为程序员的我准备亲力亲为自己实现一套

数据采集

数据来源肯定就是中食药检官方网站,首先分析了下数据页面全部都是HTML静态页面,我使用了Jsoup进行页面的拆分获取。分两步获取页面列表数据,第一步按年获取每月的数据URL,然后将列表URL传入下一步获取明细数据。其实如果只是自己使用只要抓取2018年以后的数据就行了再早的疫苗到现在基本都已经是过期状态了,但为了保证数据的完整性我还是抓取从2007至今的所有数据,并写好了定时任务每天3点去检查是否有新数据出现。保证之后程序会一直有新的数据。

抓取数据后就是做一个REST风格接口,接收疫苗号为后续的小程序查询做准备。截至到这时周末一天已经过完,主要时间就耗在数据抓取上,2016年后的页面数据比较好抓取,再之前的就不好抓了,甚至有的年份部分链接链的不是HTML页而是一个xls表格。

初探小程序

后期的数据查询肯定在手机上使用最方便,但是觉得做APP太麻烦,不如顺便把微信小程序的开发看了。看了一下小程序示例只要你做过vue或react项目就没有学习成本,像网络请求、数据存储小程序也都帮你封装好了。

整体程序分为了三个页面:

1. 首页面为表单页面,方便输入疫苗的批次号,这里的输入信息支持模糊查询,只要输入大于4位的批次号即可。

2. 查询列表页面,因为不同厂商的疫苗可能会使用同一个批次号名。所以这里会列出多份数据。看到你所接种的疫苗或生物制品点击详细。

3. 这里可以看到疫苗/生物制品的详细信息,包括品名、规格、有效期、厂商、批签情况等信息。最后还会有一个copy按钮,点击后会把原始信息的链接复制到剪切板中,可以去中食药检查看原始信息。

上传后微信的审核还挺快速的当天就过审了,但因为疫苗属于特殊关键字需要使用企业主体才可以注册,个人主体不让使用,最后小程序的名字只能叫《批号验证》。点击下面卡片就可以使用了:

最后

整个项目一共用了两天的时间,不得不承认微信小程序确实把手机上的一些开发变的简单了,甚至初中生就可以开始进行一些简单功能的开发了。

整个项目的源码含Java的SpringBoot + 小程序的客户端在这里可以查看参考使用 https://github.com/guohai163/vaccine

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 海哥聊技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档