开发一个 Flask 网站:基础知识

十一期间,我花了大概 5 天时间(每天3-4小时),用 Flask 开发了一个内部工具用来管理团队 KPI 。这个工具会交给其他同学继续开发,为了方便交流,我用几篇文章来描述一下如何从零开始快速上手 Flask 的开发流程。我会提供包括参考资料,书籍链接,学习顺序和方法,最佳实践等内容。 继续阅读开发一个 Flask 网站:基础知识

部署Flask + uWSGI + Nginx

作为一个选择综合症+洁癖患者,在部署 Flask app 的时候着实有点纠结。互联网上能找到的教程都不怎么靠谱,要么太老,要么太乱连话都说不通顺,更别提那些转了无数手的资料了。 uwsgi 的参数别名众多,各种旧版本的配置也不尽相同,让急着把自己的 Flask 站点搭建到正式服务器上的新手们无所适从。

我把自己的部署过程写出来,所有资源参考官方文档,我也尽量给出选择的原因。这教程适用于各个 linux 发行版。若有疑问,请留言。

继续阅读部署Flask + uWSGI + Nginx

常用开源镜像站整理

  • 2015-10-19 更新: 加入 npm 和 gem
  • 2015-10-20 更新: 加入 pypi
  • 2016-02-21 更新: 加入 msys2
  • 2016-07-13 更新: 加入 pypi 的豆瓣 https 源

由于众所周知的原因,许多开源软件的源站点在国内访问不顺,因此就有了镜像站这东东。这段时间我在各种开源技术中跳来跳去,也就积攒了不少镜像站,下面是个梳理。 继续阅读常用开源镜像站整理

在搜索引擎中搜索特殊字符

今天无意中看到一个在 Python 将字符串倒序的有趣方法:

print('abc'[::-1])
# cba

没弄清楚 [::] 的含义是什么,又不知道在 Python 文档中哪里能找到这个 [::] 的用法说明,于是开始 Google 搜索。

但 Google 默认是直接忽略掉搜索框中的特殊符号的。但 SymbolHound 可以。

这可是专门针对程序员的搜索引擎:

SymbolHound is a search engine that doesn’t ignore special characters. This means you can easily search for symbols like &, %, and π. We hope SymbolHound will help programmers find information about their chosen languages and frameworks more easily.

有了 SymbolHound ,就很容易搜索到 [::] 的出处了,原来它叫做:Extends Slices ,是在 Python2.3 版本加入的。

Stackoverflow 的解释更加好懂:reverse a string in Python

(全文完)

使用 slimerjs 抓取 DDos 保护的站点

我准备在一个图片站上抓点图,但发现它启用了 DDos 保护。站点会首先显示一段文本:

This process is automatic. Your browser will redirect to your requested content shortly.

要求你等待几秒钟检测浏览器,然后通过 302 重定向跳转到正确的页面(当然,这个正确的页面地址依然没变)。

等待的过程表现在浏览器上是这样的:

im_under_attack_page

这个保护的详细说明在这里: CloudFlare advanced DDoS protection

让我们看看怎么来解决这个问题。 继续阅读使用 slimerjs 抓取 DDos 保护的站点