0x00 工作方面

忙碌了两个来月,参与项目终于在这个月下旬正式上线了。

虽说项目中,我是全程被大佬们带躺的,但是毕竟是人生中参与的第一个正式的大型的商业项目,还是蛮有成就感的。尤其是在内测时,看着那么多“找茬”的玩家使用我负责的那个模块,而且一切正常运行时,别提多得意了。(讲道理,我负责的那部分逻辑确实简单,基本上也没有啥机会出BUG,但是就是开心撒 哈哈哈)

项目忙完了,终于迎来了短暂的工作淡季,可以开心的摸鱼啦。

可惜刚摸了两天鱼,就被老大发现了,然后给我安排了个难度不小的活儿。是开发一个项目组内部使用的小的管理系统,使用 B/S 架构。鉴于项目组里就我一个人闲着,于是前端,后端,服务器,数据库等等,全部都交给我一个人来搞定。

我…%&%&%#¥@#¥%%………

真是现实版的塞翁失马焉知非福啊!

当我忙着加班赶项目时,哪里能想到项目上线后就可以快乐的摸鱼……

当我光明正大的摸鱼时,又怎么会想到有这么难搞的活儿等着我……

但转念一想,这个看起来很坑的小项目,会不会是我通往全栈工程师道路上的垫脚石呢,对吧!


0x01 日常生活

相比于之前,这个月的日常生活削微丰富了一丢丢。

倒也不是说我做了什么事情,参加了什么活动,去哪儿玩了之类的,不是。

月中我一好哥儿们来找他女朋友玩,顺便喊我出去吃了个饭,借此机会,我有幸去了趟市中心,见识了一下这个城市的繁华,还见识了原来情侣居然可以这样高密度高强度地输出狗粮,盘子里的酸菜鱼突然就不香了。

哎,下次这种活动就别喊我,拜托!


我博客里写了一些爬虫的教程,有读者看完之后就加我微信请教一些问题。

其实我还是特别喜欢跟读者们聊天的,因为作为程序员,本身圈子就小且单一且固定,在跟大家的聊天中,总能让我认识一些朋友之外的朋友,了解一些生活之外的生活,真的是一件蛮有意思的事情。

这里插一句,就是有些读者朋友刚接触爬虫,提问的时候特别小心翼翼,担心万一提问的不对,太基础,或者问题太多别人嫌烦了怎么办。这种心情我真的特别理解,闻道有先后,术业有专攻,大家都是从新手慢慢成长起来的嘛,而且有些问题我也不熟,也得去网上查。所以大家有问题就提问就行了,我都会特别耐心的去解答的,别顾虑太多,没人有资格嘲笑一个想要进步的人。(但是如果你上来就是 “我是新手,我不会做,你直接帮我搞定吧”,那就对不起了,是吧,除非你给我发红包,哼)

希望大家能够多多关注我,多多跟我交流。


0x02 学习方面

这个月确实博客写的少了。一方面是因为工作确实忙,每天的活儿加班才勉强搞定,更不用说额外花大量时间整理代码,整理思路,写博客了。另一方面是最近写一些小项目,自己玩儿感觉挺有趣但是不太合适写教程拿来做分享。

这里简单说一下我做的东西吧。

1. 图片版抖音

有天好基友给我发了API接口,这个接口每次访问都会随机返回一张漂亮妹纸图片,于是我俩就开始了一系列的自娱自乐。


  1. V1.0,实现图片批量下载。利用多线程,可以一次性下载大量的小姐姐图片。
  2. V1.1,感觉批量下载太粗暴了,好东西得慢慢欣赏。于是制作了UI界面显示图片,点击按钮可以切换图片和保存图片。
  3. V1.2,程序有时候会莫名其妙的闪退,为了增加稳定性,方便排查错误,加入了异常处理,生成操作日志等功能。
  4. V1.3,为了不错过任何一个漂亮小姐姐,调用了人脸识别接口,颜值超过80分的自动保存。

【程序人生】机灵鹤七月份的月度总结_技术宅

因为它图片是随机的,所以每次刷新时都会有种莫名的期待,感觉就像是在刷图片版的抖音一样。

目前最新版本为V1.3,这款“图片版抖音”软件的唯二的用户表示很满意。


2. Excel里画画

抖音里的看到一个大佬居然可以用Excel画画,手残党的我十分羡慕。

作为程序员,岂能示弱,反手就是一段代码。

先用 matplotlib 读取图片,计算每个像素的颜色值, 然后通过 openpyxl 设置 Excel单元格颜色,保存文件。

【程序人生】机灵鹤七月份的月度总结_服务器_02

 最后打开 excel ,设置单元格宽高相等,然后缩放至合适大小,接下来就是见证奇迹的时刻。

简直跟原视频里的效果一模一样啊!

【程序人生】机灵鹤七月份的月度总结_技术宅_03

果然,技术宅拯救手残党。


3. m3u8 视频下载

某不知名的视频网站,在线看可以但下载视频居然还要注册登陆绑手机号什么的特别麻烦。

本着白嫖的目的,于是我干脆写了个爬虫,从网页源码中提取出视频的真正播放地址,然后下载视频。

听起来很简单,其实分析的时候过程还是蛮复杂的。它那个网站,打开播放视频的时候,会先打开一个 A 界面,然后 A 界面中根据视频的 id 重定向到了 B 页面,B 页面中会在加载时向服务器发起 C 请求,这个 C 请求就是视频真正的播放地址,但是它返回的结果也不是直接 mp4,而是一个 m3u8 文件,这个 m3u8 文件是有加密的,再次请求文件中的地址,才能获得不加密的 m3u8 文件,最后循环访问文件中的 .ts 链接,将下载到的 .ts 文件拼接成 mp4 ,即可完成视频下载。

(至于爬的哪个网站以及爬虫代码教程,就不方便分享了,注定过不了审的,哈哈)

果然,技术宅成就白嫖党。


4. 此外还有一些零碎的知识点


  1. 学会了使用 pyinstaller 打包Python应用,在没有Python环境的机器上也能运行
  2. 学习使用正则表达式,在大段的文字中提取需要的数据,很麻烦但很有效。
  3. 学习使用pyecharts制作图表数据可视化,比Excel的图表工具强大不少,尤其是生成html格式的图表,真是i了i了。
  4. 为了应付老大给的任务,临时恶补了一波 Vue,Php,Js,SQL 。