文章连接: https://mp.weixin.qq.com/s/QLJKWMe8t456xOI1QigGlA
今天介绍下本身作的一款小程序「冲顶课堂」,从0到1本身完成的一款小程序。
这是一款答题类的小程序,主要考察的是小学初中语文的一些知识,用户答题每次答完计算分值,统计排行榜,同时记录错题,并对题目进行纠错。 css
先上几张效果图,忽略粗糙的界面... 前端
小程序码:python
本身自己是作android开发的,这几年移动端慢慢成了「夕阳行业」,再也不是那么火热,沉淀下来了,相对的小程序慢慢火起来了,毕竟是微信的亲儿子。趁着这波浪潮,本身也学习了一波,相对上手仍是比较容易的,加上以前本身作网站,写过接口,本着学以至用的原则,将这些「技能」 灵活运用,作一个完整的小程序。android
若是是本身出题目,那基本不可能的,若是要一条条的到网上复制粘贴,这个工做量也是可想而知的,这里就要用到python 爬虫的技巧了。爬取的网站须要用户登陆,这里使用selenium
来模拟登陆,爬取时经过加载Chrome配置来免登陆。web
driverOptions = webdriver.ChromeOptions() driverOptions.add_argument(r"C:\Users\Administrator\AppData\Local\Google\Chrome\User Data") driver = webdriver.Chrome("chromedriver", 0, driverOptions)
页面解析,采用的BeautifulSoup
,先把数据统一保存到excel文档,后续写个脚本写入到数据库。页面解析这块 以前有作过相关爬虫的文章,这里就不详细描述了。 chrome
因为题目众多,小学的大概400多道,初中的1000道,本身无法一一测试,因此里面有纠错的功能,便于后续维护的。数据库
后台用的django自带的后台,接口用的django rest framework
,写起来也比较方便快捷。 比较麻烦的算是数据库设计的,固然我这里的数据结构算简单的,没什么复杂性,表关联下的就能够了。用户id 就是小程序提供的openId,跟其余表加以关联使用。django
小程序相关的方面的直接参考的官方文档的,相关api仍是很齐全的,布局采用的flex 布局,加上css样式的,整体是简单的,后期会对应增长些卡通元素的,毕竟有面向小学的。 小程序
小程序里面有个登陆受权的须要注意的,wx.getUserInfo
直接调用再也不出现受权弹框,而须要<button open-type="getUserInfo"></button>
用户主动受权获取用户信息的。这就意味着 用户直接打开小程序再也不出现受权弹框,而须要用户经过按钮点击主动去受权。 后端
另外小程序有一套本身的WXS 的脚本语言,通常渲染数据是直接经过setData 来渲染,若是遇到一些数据须要前端本身处理再显示的,就可使用WXS 来处理,避免使用js 去处理再去setData的,相似过滤器的感受。固然WXS 也有注意事项的,官网也有这块的介绍 WXS。
作这样一款小程序,一是把本身学习的关于先后端的知识灵活运用起来,二是后续公司会让移动端的接手些小程序,本身也算提早练个手的。
相对的作一款app时间周期比较长,并且要考虑到双端,小程序的开发成本相对就低了。固然这款小程序是本身从0到1的开始 ,后续再慢慢优化的!
欢迎关注个人博客:https://blog.manjiexiang.cn/
更多精彩欢迎关注微信号:春风十里不如认识你
有个「佛系码农圈」,欢迎你们加入畅聊,开心就好!
过时了,可加我微信 tx467220125 拉你入群。