[python]配置 fabric 穿越跳板机

说实话,跳板机给研发的日常工作添加了些许麻烦。 幸好 fabric 提供了穿越跳板机的功能,使跳板机不再影响我们的工作。

$ fab --version
Fabric 1.8.1
Paramiko 1.12.0
# 跳板机
env.gateway = 'lisi@192.168.100.123'

# 目标服务器
env.hosts = ['foo@111.111.111.111',
             'bar@111.111.111.112',
             'bar2@122.123.124.139',
            ]

env.passwords = {
    'lisi@192.168.100.123:22 ...
more ...

[python]去掉 unicode 字符串前面的 u

有时我们会碰到类似下面这样的 unicode 字符串:

u'\xe4\xbd\xa0\xe5\xa5\xbd'

这明显不是一个正确的 unicode 字符串,可能是在哪个地方转码转错了。

我们要想得到正确的 unicode 字符串首先就必须先将这个字符串转成非 unicode 字符串, 然后再进行解码。按照普通的办法进行 encode 肯定是不行的,因为这不是一个正确的 unicode 字符串:

In [1]: u'\xe4\xbd\xa0\xe5\xa5\xbd'.encode('utf8')
Out[1]: '\xc3\xa4\xc2\xbd\xc2\xa0\xc3\xa5\xc2\xa5\xc2 ...
more ...

[JavaScript] 使用 flotr2 绘制包含子项的饼图

Flotr2 是一个用于绘制 HTML5 图形和图表的开源 JS 库

由于 flotr2 不支持环形饼图,所以对于包含子项的饼图只能通过其他办法来实现。

我的实现方法是,首先显示最外层的饼图,再通过点击某一个项显示它包含的子项的饼图。 具体代码请见:

当然,由于 flotr2 的局限性,这个图并不完美。如果想要更好的效果, 可以试试其他的 JS 图表插件实现的效果:

more ...