在ubuntu服务器上使用Chrome Headless

几个月前发布的Chrome 59 beta推出了headless模式。原生的Chrome,更好的通用性,更快的速度……似乎是时候和Phantomjs、Ghost们说再见了。

搜索一圈发现大多数人都是在桌面版的linux或者mac上尝了鲜,然而要将Chrome用于web2.0爬虫的的话,还是得在服务......

Flask0.1源码阅读——请求处理和响应

用flask做了几个项目了,它的各个模块的功能也都基本了解,有时候为了解决某个bug会溯源到对应的源码里一看究竟,但一直都没有从整体上理解flask的工作流程。最近发现flask最初版本代码不过300多行,于是赶紧找出来阅读了一遍。

这篇笔记主要记录flask对于请求的处理和响应过程,忽略了关于模......

phantomjs爬虫服务化

最近发现部署爬虫的VPS上MongoDB数据库老是崩,检查半天才发现是内存耗尽导致。top查看内存使用情况时被吓了一跳,密密麻麻的phantomjs进程几乎填满了内存。

异步Web框架Tornado初探

python的3个主流Web框架Django,Flask,Tornado,前两个都用过。一个大而全,一个小而美。而Tornado与它们都不太一样,主打异步,通过非阻塞网络I/O支撑起大量的链接。

大概看了看Introduction to Tornado,路由,模版,配置这些和其他的框架大同小异。而......

在Celery中使用Flask的上下文

其实我只是想把邮件发送这个动作移到Celery中执行。

既然用到了Celery,那么每次发邮件都单独开一个线程似乎有点多余,异步任务还是交给Celery吧。

在Flask应用中集成Celery

Celery和Flask一起使用并没有什么不和谐的地方,都可以不用定制的Flask扩展,按照网......