2017小结

今天写完年度工作总结之后,才想起快有两个多月没有更新博客了,主要是因为从十月末开始,我的生活和工作环境都有比较大的变动,索性来一篇所谓的年度小结来概括一下2017这一整年值得纪念的点点滴滴。

离线环境python项目的部署

最近自己参与的一个项目接近尾声,需要把代码部署到甲方提供的服务器。本来想着没有什么困难,谁知道甲方提供的服务器需要连接到vpn堡垒机之后才能连接,并且服务器是不能与外网直接连接的。知道真相的我眼泪掉下来。

在vultr上搭建shadowsocks

为啥突然想要自己搭一个shadowsocks呢,事情的起因是这样的:蓝灯这个项目在git trending上连续上榜多日,看了评论发现原来这个东西是个vpn,很多人用来当梯子。因为最近种种原因这个梯子现在用不成了,所以很多用户跑来吐槽。我一直比较懒,都是直接买的现成的vpn,现在一直在用这个官网经常上不去的netfits,总体感觉还行,就是价格有点贵,所以趁着这个十一长假之后的第一个周五下午来搞点事情,搭一个自己的ss服务器。
lantern.png

一次异步任务的执行过程

最近在做一个小型的mongodb运维工具,在开发的过程中想要实现mongodb数据库备份的功能:前端页面提供一个按钮,用户点击之后向后端post想要备份哪个数据库,后端接到请求之后将这个任务发给异步任务队列,在数据库完成备份之后,后端推送一个包含此次备份详情的消息给前端页面,并且提供一个能够下载此备份文件的链接。
我的实现方法可以用下边这个图来表达:
task-flow.png

mongodb使用总结

本想上周末写好这篇总结的,无奈一起开黑的时间总是过得很快,就偷了个懒,并且还学了个新菜:西红柿牛腩.jpg。所以就把总结的事情放到今天来了。
初次接触mongodb还是在研一刚入学的时候,那时候接触的东西少,很多概念都不清楚,到现在差不多已经有三年了,所以总结一下我用mongodb做了哪些事情还是比较有意义的。

proxy在爬虫中的使用姿势

通过爬虫获取数据会经常被服务器ban掉ip,所以有个有效的proxy pool十分必要。这几天在爬网易云音乐的用户数据,顺便搞了个proxyhunter,并且尝试发布成pip包:proxyhunter,方便以后的使用。下面主要说下requests在进行请求的时候,proxy如何设置,以及我这个proxyhunter如何使用。

Iterables,Iterators和Generators

最近一段时间都在研究python里边的一些概念:iterator,iterable和generator.看到这篇文章写的十分不错,基本上讲清楚了这三个东西都是什么以及他们之间的关系.这当然值得记录一下😊.
所谓一图胜千言,这篇文章中的这个关系图让人一目了然.
relationships.png

python的itertools[读文档]

python的itertools库受到了来自APL, Haskell和SML的灵感,并且用最适合python语言特性的形式重构。它差不多可以说是定义了一套高效、节省内存的方法使用纯python来构建开发者所需要的各种不同迭代器。