programthink / zhao
- среда, 29 июня 2016 г. в 03:13:12
Python
【编程随想】整理的《太子党关系网络》,专门揭露赵国的权贵
Table of Contents |
此项目专门用来揭露天朝的权贵(也就是传说中的“赵家人”)。
(2月29日)俺把这几年收集整理的数据开源到 GitHub,便于多人协作——大伙儿群策群力,一起来曝光权贵家族。
目前收集的资料——包括700多个数据文件( 对应700多人,130多个家族 ),另有200多张图片(人物头像)。
为了确保数据的可信度,俺主要参考“维基百科”以及一些国际权威媒体的报道(比如《纽约时报》、《华尔街日版》、《金融时报》等等)。
另外,对于某些客观事实(比如:生卒年月、简历、亲戚关系),俺也参考了天朝政府的官方网站,以及墙内的“百度百科”。
GitHub 提供了“下载整个项目”的功能,但是会比较大。
如果你仅仅想看《太子党关系网络》这份文档,只需在首页上方点击进入 download 这个目录。
该目录下有 pdf 和 jpg 两个子目录,分别存放对应的 【文件类型】 。你想要看哪一种文件格式,就进入哪个子目录里面。
进入【文件类型】的子目录之后,会看到一个文件列表(目前有13个文件)。先点击你想要的某个文件,会进入该文件的页面。
然后在【右上方】你会看到一个 Raw 按钮 ,在这个按钮上点【右键】,在【右键菜单】里面选“保存”或“另存为”,就可以把这个文件下载到你本机。
俺非常希望有更多的网友参与该项目,大伙儿一起来完善天朝权贵家族的资料。
想要参与的同学,可以通过如下方式:
本项目的数据文件,全部采用YAML 格式。这种格式非常简洁明了,有利于完全不懂技术的网友参与编辑。
而且俺在每一个 YAML 格式的文件中都写了详细的注释,便于其他网友修改。
data 目录用来保存数据文件,该目录下另有如下三个子目录:
每个目录下都有一个 brief.yaml 文件,包含此人的简介。
有些目录下还有一个 portrait.png 文件,对应此人的头像。
该目录存放编译脚本。该脚本的使用参见下面的章节。
该目录存放制作好的文件,目前先提供 jpg 和 pdf 两种格式。
如果你需要其它格式,可以用 bin 目录下的编译脚本自行搞定(编译脚本的使用,参见下面的章节)。
(俺是在 Linux 上编写该脚本,尚未在 Windows 上进行测试)
如果你在 Windows 上使用碰到问题,可以到俺博客留言进行反馈。也可以在本项目发一个 issue。
俺使用 python 作为编译脚本,该脚本位于 bin 目录下。
通过该脚本可以把原始数据生成为 dot 语言的脚本。然后再调用 Graphviz 把 dot 脚本生成各种格式(比如:pdf、jpeg)。
要使用该脚本,先在命令行模式下进入 bin 目录,然后运行如下命令:
(生成 pdf 格式的示例)
python make.py pdf
(生成 jpg 格式的示例)
python make.py jpg
要使用上述脚本,你需要事先安装相关的软件(如下)
目前 Python 有两种大版本——python2 和 python3——俺的编译脚本 【同时兼容】 这两种 Python 的大版本。
对于 Python 的小版本,俺本人在 2.7 和 3.5 上测试通过。2.6 和 3.4 估计也可以。
你需要在你的 python 环境中安装该软件包。其官方链接如下:
《开源项目:【自动】绘图工具Graphviz——《太子党关系网络》就是用它制作》
本项目上线第二天,就收获 363 个 star 兼 88 个 fork,甚至还挤进 GitHub 的“当日 Trending”——俺很荣幸,也很高兴有这么多人给俺捧场。
但是在本项目的 issue 列表中也看到好几个反对此项目的程序员(应该都来自墙内),他们担心这个项目导致 GitHub 被 GFW 封杀。
这几年来,类似的言论俺已经看了不少。就好比强盗拿刀杀人,围观者不但没有谴责强盗,反而去谴责卖刀的店家——这就是传说中的“斯德哥尔摩综合症”。
有兴趣的同学,可以看俺之前的博文——《天朝民众的心理分析:斯德哥尔摩综合症》