【python】 使用 setuptools
不会安装python的egg文件,在网上搜索了一下,被“蟒蛇蛋”这个词雷到了,记录下。
随着对python的逐渐使用,发现一些python组件是用一个包管理器发布的,今天搞了快一个小时,终于搞定了,这方面中文资料比较少,都是看 英文资料。如果你以前没有包管理器,可能会摸不着头脑。不过只要理解了一些概念,几步简单的操作就搞定了,关键是对于你以后安装和管理python包很方 便,而且如果你更进一步的话,你还可以自己制作“蛇蛋包”,呵呵。今天时间有限,一会儿还要帮喵喵看flash文件出错原因,所以今天就简单写写了。
1. 问题的由来
有的网页下载源代码中没有申明编码方式,因此需要有一个程序自动判断编码方式,因此我找到了一个开源的python工具,据说Mozilla中就是 用的这个,chardet开源软件。不过包下载下来了,解压出来就一个光秃秃的文件,没有任何说明,用EditPlus打开,发现有一些信息,在末尾还看 到setup段,但是不知道怎么装啊,郁闷了好一会儿,开始寻找方法。后来发现他是通过包管理工具setuptools发布的。因此我找到了 setuptools,在官方网站上有安装部分的说明,不过说得比较含糊了,让我找一个exe的安装文件,哪有啊,郁闷的。后来知道 了,setuptools的安装方法也很独特的,下面我就介绍怎么安装setuptools
2. 安装setup tools
下载文件:ez_setup.py
然后使用2.6的解释器执行,这个脚本会自动在网上去下载相关的安装程序,然后就安装好了,安装完成后,会在scripts文件下生成几个exe可执行文件。下面是我的截图:

3. 使用 setuptools
很简单了,语法如下:
easy_install.exe 你要安装的egg包
注意egg包不一定是扩展名是egg的,其实在linux里面是不区分扩展名的。后面的egg包也可以是网址的。如果你非常懒,像我jason懒羊羊那么懒的话,直接输入名称就可以了。比如你要安装Mechanize模块,只要输入:easy_install Mechanize 就可以啦,剩下来的工作setuptools会帮你搞定的。

到此为止,我的chardet安装完成。
4. 相关知识:egg包和setup tools
python的egg文件有点像java中的jar文件,是一个工程打包文件,便于安装部署,仅此一点,给多少pythoner带来了多少激动。而setup tools就是一个提供包管理的工具或者说是软件。
egg 是一个包含所有包数据的文件包。在理想情况中,egg 是一个使用 zip 压缩的文件,其中包括了所有需要的包文件。但是在某些情况下,setuptools 会决定(或被开关告知)包不应该是 zip 压缩的。在这些情况下,egg 只是一个简单的未曾压缩的子目录,但是里面的内容是相同的。使用单一的版本可以方便地进行转换,并可以节省一点磁盘空间,但是 egg 目录从功能和组织结构上来说都是相同的。
安装package是经常碰到事情, 而且安装也比较繁琐,最头疼就是包依赖的问题,有时候一个上午可能就为了安装一个包,就像我今天这样的。在Java里面有这样的包管理软件,那就是 Maven了, 他会帮助你找到所依赖的包. 据说其他语言,比如, php, ruby, perl等 也有类似的工具软件.
【python】 使用 setuptools的更多相关文章
- Python中setuptools做什么用的?
概括 setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它 是一组Python的 distutilsde工具的增强工具(适用于 Pyt ...
- ez_setup.py(安装python下setuptools用)
#!python"""Bootstrap setuptools installation If you want to use setuptools in your pa ...
- Python安装setuptools时报Compression requires the (missing) zlib
装机员为您提供Python安装setuptools时报Compression requires the (missing) zlib的文章咨询供您阅读,如何使用Python安装setuptools时报 ...
- 转载 Python 安装setuptools和pip工具操作方法(必看)
本文章转载自 脚本之家 http://www.jb51.net 感谢! setuptools模块和pip模块是python进行第三方库扩展的极重要工具,例如我们在需要安装一些爬虫或者数据分析的包时就 ...
- 【原】关于Python中setuptools安装的问题
在生成package的时候,需要在setup.py中引入setuptools包,可是却报告如下错误: ImportError: No module named setuptools 解决办法就是下载s ...
- python安装setuptools
http://wenku.baidu.com/link?url=I-FCVFpHbP2oyCt1Gjb1X5xHk4P475dVU3j8rWd4b4VSuD-Wd86LdbC7bdYskZdtDfGK ...
- windows平台下安装python的setuptools工具
到下面的网址下载setuptools-0.6c11.win32-py2.7.exe http://pypi.python.org/pypi/setuptools#files 然后安装setuptool ...
- python 安装 setuptools Compression requires the (missing) zlib module 的解决方案
背景: 虚拟机centos下安装python辅助工具 setuptools报错,错误信息大概如下: Traceback (most recent call last): File "setu ...
- python安装setuptools和pip
今天需要写一个python导出excel的小程序.这里需要用到XlsxWriter模块,但是这个模块并没有安装,所以需要先下载该模块,然后才能在程序中使用.这里就需要安装模块,我选择使用pip.以下就 ...
- Python - 使用Setuptools进行程序打包
1- Setuptools简介 通过Setuptools可以更方便的创建和发布Python包,特别是那些对其它包具有依赖性的状况: Python打包用户指南(Python Packaging User ...
随机推荐
- logstash收集Nginx日志,转换为JSON格式
Nginx日志处理为JSON格式,并放置在http区块: log_format json '{"@timestamp":"$time_iso8601",' '& ...
- linux内核与分析 心得与体会
作业目录: (1)计算机是如何工作的:http://www.cnblogs.com/20135335hs/p/5213394.html (2)操作系统是如何工作的:http://www.cnblogs ...
- vs+qt使用资源文件
1.在Resources目录新建一个.qrc文件 2.在解决方案的Resource Files中添加这个文件 3.为这个qrc添加资源,建议把资源都放进Resources
- CentOS7.2 切换成iptables规则
关闭firewall service firewalld stop systemctl disable firewalld.service #禁止firewall开机启动 安装iptables规则: ...
- 【联网】虚拟机下Linux(终端)配置网络的方法
这几天在虚拟机vmware上部署centos系统,想通过内部联网用yum命令安装必需的软件,但是一直不能静态地址联网,今天终于找到一个方法centos内部设置IP,对外联网.设置过程如下: 1.首先是 ...
- luogu P1141 01迷宫
https://www.luogu.org/problem/show?pid=1141 还不太会用 BFS 然后就跟着感觉走了一波 经历了很多错误 刚开始的读入 然后BFS的过程 最后T三个点 看到别 ...
- Flask 3 程序的基本结构2
NOTE 1.hello.py 通过修饰器的route方法添加动态路由: #!/usr/bin/env python from flask import Flask app = Flask(__nam ...
- Java回顾之多线程
在这篇文章里,我们关注多线程.多线程是一个复杂的话题,包含了很多内容,这篇文章主要关注线程的基本属性.如何创建线程.线程的状态切换以及线程通信,我们把线程同步的话题留到下一篇文章中. 线程是操作系统运 ...
- js 面试题总结
面试题解析 window.number = 1; var obj = { number: 4, dbl: (function(){ console.log(obj.number); this.numb ...
- apache配置文件详解与优化
apache配置文件详解与优化 一.总结 一句话总结:结合apache配置文件中的英文说明和配置详解一起看 1.apache模块配置用的什么标签? IfModule 例如: <IfModule ...