半自动刷网络课程

发布在 伪技术

刷一个网络课程,很常见的那种,播放视频统计观看时长。不过该系统比较弱,即使切换到别的页面一样也会计算时长。限制条件只是偶尔会出现一些问答题让视频暂停且一个视频播放完成后不会自动播放下一个视频。最开始是打算直接模拟发送http请求,不过后面感觉或许有坑就选了另外一种办法。讲课肯定是有声音的,用程序去捕获声音,如果五秒钟没有声音则认为有问答题出现或者该章节讲完了。

阅读全文

刚转行第一次IT面试的时候面试官问我,list和dict是不是线程安全的。当时我就想,擦嘞,作为一个初学者list和dict不是线程安全的都看了N遍啦。这还有疑问么~~~,现在想想并没有抓住重点,线程安全应该针对于具体的操作,而不是具体的对象,我们说Queue是线程安全的是因为针对它的所有操作都是线程安全的。

阅读全文

pycallgraph源码分析

发布在 源码解析

用来生成函数调用图,这个工具可能名气比较大。因为看介绍就能看到好像可以生成比较帅气的图像。从源码层面看。其实这个工具是相当简单的,就是使用了sys.settrace接口,该接口常用于debug、profile(本文环境python3.5.1)。

阅读全文

使用pyenv install 3.5.0的时候直接去python.org官网下载源码进行编译。速度几kb每秒慢到无法自理。无奈用代理速度也不怎么样。再其次该项目的作者是自己写了一个pyenv镜像项目的,只可惜更新频率远不如pyenv。导致安装一些新的版本无法使用公共代理

如果安装2.7.6你可以选择使用国内七牛的镜像。项目地址http://pyenv.qiniudn.com/pythons/。执行

1
2
export PYTHON_BUILD_MIRROR_URL="http://pyenv.qiniudn.com/pythons/"
pyenv install 2.7.6

就会使用七牛镜像进行下载速度非常快。
缺点就是除了网页上的一些版本。其他的都不支持了。七牛没有对这个项目进行更新

我们可以用迅雷或者其他可用的快速的方法把python源码下载到本地。自己开启一个镜像给自己用。这样就好了。比如执行

1
2
3
ficapy@L ~> pyenv install 3.5.0
Downloading Python-3.5.0.tgz...
-> https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz

然后把https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz下载到本地。
再设置镜像地址export PYTHON_BUILD_MIRROR_URL="http://127.0.0.1:8000/"
到下载地址执行python3 -m http.server
再次执行pyenv install 3.5.0发现还是从官网下载。不过此时查看http.server上有一条HEAD请求日志。-_-发现不是直接请问的文件名,而是一个64位的字符。将下载的文件名修改成那64位字符。在执行就ok了~~

注释和共享

个人认为python中描述符协议是一个比较神奇的存在,是因为如果你不去了解property的内部实现,没有深究别人写的__set__、__get__方法。或许写python很多年都对这个东西没什么了解。然而这玩意儿有时候真的挺好用的。本文不会详述描述符协议。会着重讲一个小例子。如果以前没有接触过描述符,请依次查看文末相关资料的两篇文章

阅读全文
作者的图片

ficapy

author.bio


author.job


广东深圳