【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 ...
随机推荐
- c++生成算式并计算(《构建之法》第一章课后第一题)
c++实现计算器(自动生成算式并计算) 要满足的需求有以下几个: 自动生成随机的四则运算算式,包含括号和小数. 对生成的算式计算出结果. 算式.结果分别存储到不同的文件. 一 生成算式 由上述需求可知 ...
- 20155201 2016-2017-2 《Java程序设计》第二周学习总结
20155201 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 编译运行P55各种类型可储存的数值范围代码,截图: 常用格式控制符: 符号 说明 %% 表示 ...
- 20145311 《Java程序设计》第九周学习总结
20145311 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 16.1JDBC 16.1.1JDBC简介 JDBC(Java DataBase Connec ...
- c++ 判断list是否为空(empty)
#include <list> #include <iostream> using namespace std; int main() { list<int> nu ...
- git看不到别人创建的远程分支
解决办法: $ git fetch //取回所有分支(branch)的更新.如果只想取回特定分支的更新,可以指定分支名,例:$ git fetch <远程主机名> <分支名> ...
- sshpass使用
sshpass的使用方法 应用范围:可以在命令行直接使用密码来进行远程连接和远程拉取文件. 使用前提:对于未连接过的主机.而又不输入yes进行确认,需要进行sshd服务的优化: # vim /etc/ ...
- How To Use Amazon MWS To Download Unshipped Order Reports
文章来源:http://www.samswiches.com/2011/02/how-to-use-amazon-mws-to-download-unshipped-order-reports/ ac ...
- sql语句in
在今天之前sql一直用in语句,知道今天遇到一张数据量很大的表查了三分钟才查出来,这才意识到数据库优化有多重要.作为一名开发人员,首先从优化sql语句开始. 之前用in写sql是这样的 select ...
- UVA-1336 Fixing the Great Wall(区间DP)
题目大意:长城(视作x正半轴)有n处破损.有一个智能修复机器人,它的初始位置和移动速度已知.每处破损处都有一组参数(x,c,d),x表示位置,c.d表示在时间t后再修复该处破损的花费为d*t+c.求用 ...
- oracle 10g 用dbms_xmlgen将数据表转成xml格式
oracle 10g 用dbms_xmlgen将数据表转成xml格式 oracle 10g 用dbms_xmlgen将数据表转成xml格式 oracle用plsql将sql查询的所有数据导出为xml