python 使用 google protocol buffer

在公司内网使用 python 需要依赖于第三方模块的时候真是各种不方便,这个时候就无比的怀念 c 系列的 tar.gz 源码包自行编译的好处了,其实根本的矛盾在于公司内网处于安全考虑对外网的访问有各种隔离,而 python 这个东西在第三方模块的管理上又十分的依赖于 setuptool 和 easy_install,这些东西在给人用的想当然的觉得大家的网络环境都很好,于是就悲剧了。

先说说怎么安装 easy_install 吧,easy_install,install 起来一点都不 easy。。首先下载 setuptools 的安装包,https://pypi.python.org/pypi/setuptools,要说这个页面也真是奇葩,页面的上面有一个 downloads 按钮,按说一般点这个就会开始下载最新的稳定版本了嘛,他不是,他是一个 anchor 的 href 标签跳到页面的中部的一个 downloads 节点,嗯,算了,这种做法也不是没见过,行,跳下来一看,downloads 节点很简洁嘛,就两句话,一看,All setuptools downloads can be found at 叉叉叉,后面又跟一个链接,哎呀妈呀,又要点一下,没事,咱是勤劳的小蜜蜂,再点一下,咦,但是,怎么又回到页面头部去了,反复几次,发现不对,认真一看,Scroll to the very bottom of the page to find the links. 真是坑爹啊,么事,咱滚到底(这页面也真长,不拖滚动条不行,要真是滚轮 scroll 的话天都黑了),滚到底,一看,怎么是这些东西

Author: Python Packaging Authority Documentation: setuptools package documentation Home Page: https://pypi.python.org/pypi/setuptools Keywords: CPAN PyPI distutils eggs package management License: PSF or ZPL Categories Development Status :: 5 - Production/Stable Intended Audience :: Developers License :: OSI Approved :: Python Software Foundation License License :: OSI Approved :: Zope Public License Operating System :: OS Independent Programming Language :: Python :: 2.6 Programming Language :: Python :: 2.7 Programming Language :: Python :: 3 Programming Language :: Python :: 3.1 Programming Language :: Python :: 3.2 Programming Language :: Python :: 3.3 Programming Language :: Python :: 3.4 Topic :: Software Development :: Libraries :: Python Modules Topic :: System :: Archiving :: Packaging Topic :: System :: Systems Administration Topic :: Utilities Package Index Owner: pje, jaraco Package Index Maintainer: ianb, jaraco DOAP record: setuptools-3.6.xml

没有下载链接啊,再往回滚一点,不容易,终于看到了,下载回来,解压缩,一看,有一个 setup.py,那敢情好,双击运行呗,但是他又说要自动 download 一个啥东西,download 半天又 download 不下来,一想,得,内网,于是参考这个,http://blog.scoke.org/easy_install%E6%8C%81%E4%BD%BF%E7%94%A8%E4%BB%A3%E7%90%86%E5%AE%89%E8%A3%85.html,把环境变量的代理设置好,然后重新点 setup.py,发现咋还是不行啊,又 google,然后又被带到之前的下载页面了,一看

Windows 7 (or graphical install) For Windows 7 and earlier, download ez_setup.py using your favorite web browser or other technique and “run” that file.

好吧,windows 7 还不一样,要点 ez_setup.py,好吧,点了,下载了,安装了,发现命令行还是不能 easy_install 啊,搜索一下看到这里,http://www.cnblogs.com/zhuyp1015/archive/2012/07/17/2596495.html,好吧,把 script 目录加入 path,终于可以了,然后就是 easy_install protobuf,为了跑这个命令,真是折腾啊

然后参考这个,http://blog.csdn.net/sanguomi/article/details/8620456,把 python 的 google protocol buffer 用起来,用倒是很容易的

其实吧,在这个过程中,我是想过要去通过离线的方式,安装 google protocol buffer 的 python 模块的,但是,这个下载链接真不好找啊,好不容易找到一个 egg 文件,一查 egg 怎么安装,又绕回 setuptool 上去了。。


历史评论

wanax (2014-06-04 11:08:16):

你这文风越来越碎碎念了…

使用 Hugo 构建
主题 StackJimmy 设计