作为Python标准的打包及分发工具,setuptools可以说相当地简单易用.它会随着Python一起安装在你的机器上.你只需写一个简短的setup.py安装文件,就可以将你的Python应用打包.本文就会介绍下如何编写安装文件及如何打包分发. 首先,如果你需要另外安装setuptools,你可以使用下面的命令: $ wget http://peak.telecommunity.com/dist/ez_setup.py $ sudo python ez_setup.py 第一个安装文件 接下来…
作为Python标准的打包及分发工具,setuptools可以说相当地简单易用.它会随着Python一起安装在你的机器上.你只需写一个简短的setup.py安装文件,就可以将你的Python应用打包 首先,如果你需要另外安装setuptools,你可以使用下面的命令: wget http://peak.telecommunity.com/dist/ez_setup.py sudo python ez_setup.py 第一个安装文件 接下来让我们编写安装文件,假设我们的项目名为setup-dem…
关于python setup.py文件的编写技巧 环境:最新版setuptools,初步认识setuptools可以参考这篇文章 1. 自定义命令 from setuptools import setup, Command class MyCommand(Command): description = "Description of the command" user_options = [] # This method must be implemented def initiali…
1.什么是setuptools? setuptools是Python distutils增强版的集合,它可以帮助我们更简单的创建和分发Python包,尤其是拥有依赖关系的.用户在使用setuptools创建包时,并不需要已安装setuptools,只要一个启动模块即可. 功能亮点: 利用EasyInstall自动查找.下载.安装.升级依赖包 创建Python Eggs 包含包目录内的数据文件 自动包含包目录内的所有的包,而不用在setup.py中列举 自动包含包内和发布有关的所有相关文件,而不用…
**********************************************************对所学内容的简单汇总******************************************************* 在安装python依赖库时,我们使用pip install 或者python setup.py install. pip 会自己搜索适合的版本,python setup.py 需要下载源码本地安装.但是python setup.py 适合一键打包安装.…
setup函数常用参数: --name                         包名称 --version                      包版本 --author                       程序作者 --author_email            程序作者的邮箱地址 --maintainer                维护者 --maintainer_email     维护者的邮箱地址 --url                         …
背景 nova服务构建失败,报错: 'tests_require' must be a string or list of strings containing valid project/version requirement specifiers 概述 推荐-Python 包管理工具解惑 openstack/nova setup.py 孔令贤-关于python中的setup.py 簡單的插件框架 - 使用 pkg_resources python setup.py --help-comman…
将我们写的Python程序发布成包后,可以使其能够安装使用. 在项目上测试的时候,某些情况下,可以将Python打包,然后上传到测试服务器,安装测试. setuptools是常用的打包工具. 一个简单的setup.py文件如下: from setuptools import setup, find_packages setup( name = "my_demo", version = "0.1", packages = find_packages() ) 其中,na…
在上一篇博文中总结了python中导入包,安装包一条完整的线路.其中有一个有意思的知识点,安装包的方式有很多种,模块和包管理中打包,发布,安装也是值得研究的内容. python中安装包的方式有很多种: 源码包:python setup.py install 在线安装:pip install 包名(linux) / easy_install 包名(window) python包在开发中十分常见,一般的使用套路是所有的功能做一个python模块包,打包模块,然后发布,安装使用.打包和安装包就是最常见…
python中安装包的方式有很多种: 源码包:python setup.py install 在线安装:pip install 包名(linux) / easy_install 包名(window) python包在开发中十分常见,一般的使用套路是所有的功能做一个python模块包,打包模块,然后发布,安装使用.打包和安装包就是最常见的工作.学习中遇到distutils和setuptools两种打包的工具,学习之后做笔记记录. distutils distutils 是 python 标准库的一…
转载自:http://blog.konghy.cn/2018/04/29/setup-dot-py/ Python 有非常丰富的第三方库可以使用,很多开发者会向 pypi 上提交自己的 Python 包.要想向 pypi 包仓库提交自己开发的包,首先要将自己的代码打包,才能上传分发. 一.distutils 简介 distutils 是标准库中负责建立 Python 第三方库的安装器,使用它能够进行 Python 模块的安装和发布.distutils 对于简单的分发很有用,但功能缺少.大部分Py…
pyinstaller是一个很好用的python打包工具,在Windows环境下可以将python脚本打包成一个exe可执行文件,并且脚本中所依赖的各种第三方库在打包时候都会被统一处理到一起,这样打包成的exe文件就可以在没有安装这些库的电脑上执行,甚至也可以在没有安装任何python环境的电脑上执行. 安装 pip install pyinstaller 基本用法 在要打包的py脚本(比如名称为demo.py)所在的目录下,执行: pyinstaller -F -w -i icon.ico d…
python包管理-distutils,setuptools,pip,virtualenv等介绍 对于每个编程语言来说打包和发布开发包往往非常重要,而作为一个编程者能够快速容易的获得并应用这些由第三方提供的包同样非常重要.类似于java为了便于管理有人开发了maven等管理工作,而python自然而然也需要便捷的打包和发布工具,以下就介绍python的几个包管理方式. 一  distutils - Python自带的基本安装工具, 适用于非常简单的应用场景使用 通过distutils来打包,生成…
   如果你写了一个python库,想让别人快速使用你的库,最简单的方式就是使用python官方出品的库托管网站pypi了.    pypi的全称是Python Package Index,是python的一个软件仓库.pypi可以帮助你找到和安装由社区开发和共享的python库.包的作者可以使用pypi来分发和共享其所开发的python库.如下图1是pypi的首页,可以看到pypi已经拥有近30w的用户以及超过16w的项目. 图1:pypi首页    1.一般来说,你发布的库中需要有一个set…
此文已由作者张耕源授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 作为一名接触Python有一段时间的初学者,越来越体会到Python的方便之处,它使人能更 多的关注业务本身的逻辑,而不用太纠结语言层面的技巧与细节.然而,随着服务的规模 变得越来越大,如何方便快速地制作与发布一个Python软件包则越来越成为一个让人头疼 地问题,特别是像Openstack这种相对复杂.各种依赖也很多的Python项目,到目前也没有 发现特别完美的解决方案.这里将尝试对Python的包管…
英文 | The state of Python Packaging[1] 原作 | BERNAT GABOR 译者 | 豌豆花下猫 声明 :本文获得原作者授权翻译,转载请保留原文出处,请勿用于商业或非法用途. pip 19.0 已经于 2019 年 1 月 22 日发布.在其功能列表中,最值得注意的是它现在支持 PEP-517,默认情况下是支持的,如果项目的根目录中有一个 pyproject.toml.该 PEP 于 2015 年创建,并于 2017 年被接受.尽管 pip 花了一段时间才实现…
英文 | Python packaging - Past, Present, Future[1] 原作 | BERNAT GABOR 译者 | 豌豆花下猫 声明 :本文获得原作者授权翻译,转载请保留原文出处,请勿用于商业或非法用途. 你是否想过在运行 pip install 时究竟发生了什么?这篇文章将给你一个关于过去所涉及的步骤的详细综述,以及它是如何随着 PEP-517 和 PEP-518 的采用而改变的. 在前一篇文章中,我描述了如何做到安装三种类型的内容:源码树(source tree)…
刚开始学习Python时,在看文档和别人的blog介绍安装包有的用easy_install, setuptools, 有的使用pip,distribute,那麽这几个工具有什么关系呢,看一下下面这个图就明白了 可以看到distribute是setuptools的取代,pip是easy_install的取代. 关于这些包工具可以参考 http://guide.python-distribute.org/installation.html#installing-pip 下面简单的介绍一下: Dist…
以下主要Python打包汇总,作为学习备份: 一.使用python内部基础工具包Distutils打包程序 1. 在打包之前需要做的就是配置好安装脚本,一般为setup.py文件: 示例(setup.py): from distutils.core import setup setup(name='Hello', version='1.0', description='example', author='haomiao', py_modules=['hello']) 该配置文件,只使用了py_m…
Python 包管理工具解惑 本文链接:http://zengrong.net/post/2169.htm python packaging 一.困惑 作为一个 Python 初学者,我在包管理上感到相当疑惑(嗯,是困惑).主要表现在下面几个方面: 这几个包管理工具有什么不同? distutils setuptools distribute disutils2 distlib pip 什么时候该用pip,什么时候该用 setup.py ,它们有关系么? easy_install.ez_setup…
常见的包管理工具及关系 setuptools -->distribute easy_install-->pip 1.distribute distribute是对标准库disutils模块的增强,我们知道disutils主要是用来更加容易的打包和分发包,特别是对其他的包有依赖的包.distribute被创建是因为setuptools包不再维护了. 主页:https://pypi.python.org/pypi/distribute 安装及使用 wget https://pypi.python.…
1. Python包管理工具 在安装Python包的过程中,经常涉及到distutils.setuptools.distribute.setup.py.easy_install.easy_install和pip等等.突然对Python的包管理凌乱了,这些工具关系是什么,应该怎么去选择使用? 下面就简单介绍下Python包管理相关的一些内容. 1.1 distutils distutils 是 python 标准库的一部分,这个库的目的是为开发者提供一种方便的打包方式, 同时为使用者提供方便的安装…
2018-09-27 21:12:05   一 前言 在windows平台学习python的过程中,你肯定会遇到需要把.py脚本打包成.exe的情形,如此,至少有两方面的好处:第一,你的代码保密性更好,其他人不能直接看到python代码:第二,打包后的exe程序无需再安装相应的模块即可直接使用:其中,第二条是我们做打包工作的主要考虑,方便工具的分发和使用. 二 python打包工具简洁 Python是一门开放.包容.优雅的开发语言,所以,相关领域的模块或工具自然是很多的,其中打包工具,比较广泛的…
6 things I learned about setuptools Python 101: easy_install or how to create eggs « The Mouse Vs. The Python Python 201: An Intro to distutils « The Mouse Vs. The Python Python Packaging: Hate, hate, hate everywhere | Armin Ronacher's Thoughts and W…
Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. selenium - web UI自动化测试. mechanize- Python中有状态的程序化Web浏览链接 selene - 使用Python + Ajax支持+ PageObjects + Widgets进行简明UI测试 hitch - 基于服务的应用程序的高级集成测试框架. Needle - Css 自动化测试框架. seleniumbase - 端到端自动化测试框架. pytest_spli…
一.构建工具setup.py的应用场景 在安装python的相关模块和库时,我们一般使用“pip install  模块名”或者“python setup.py install”,前者是在线安装,会安装该包的相关依赖包:后者是下载源码包然后在本地安装,不会安装该包的相关依赖包.所以在安装普通的python包时,利用pip工具相当简单.但是在如下场景下,使用python setup.py install会更适合需求: 在编写相关系统时,python 如何实现连同依赖包一起打包发布? 假如我在本机开…
转载:http://blog.csdn.net/u011630575/article/details/52940099 buildout简介 Buildout 是一个基于Python的构建工具, Buildout 主要是为了解决两个问题: 中心化的应用组装和部署 重复的从Python软件发布中组装项目 通过一个配置文件 buildout.cfg , 可以从多个部分创建.组装并部署你的应用, 能够构建一个封闭隔离的开发环境. buildout安装 pip install zc.buildout b…
Python 包管理工具解惑 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商: 本站部分原创和翻译文章提供markdown格式源码,欢迎使用文章源码进行转载: 本博客采用 WPCMD 维护: 本文标题:Python 包管理工具解惑 本文链接:http://zengrong.net/post/2169.htm 一.困惑 作为一个 Python 初学者,我在包管理上感到相当疑惑(嗯,是困惑).主要表现在下面几…
python包管理工具之间的关系 现在的python包管理工具有很多,非常混乱,必须理清他们之间的关系才能更好的使用python构建强大的包关系系统工具. 首先:python官方推荐的第三方库是PyPI: PyPI(Python Package Index)是python官方的第三方库的仓库,所有人都可以下载第三方库或上传自己开发的库到PyPI.PyPI推荐使用pip包管理器来下载第三方库. 而这些包管理工具正是为了管理,安装和发布这些常用的包而开发的,这些包管理工具的作用就是安装,管理和发布p…
在我刚翻译完的 Python 打包系列文章中,作者提到了一个神奇的测试工具 tox,而且他本人就是 tox 的维护者之一.趁着话题的相关性,本文将对它做简单的介绍,说不定大家在开发项目时能够用得上. Command line driven CI frontend and development task automation tool 命令行驱动的 CI 前端和开发任务自动化工具 tox 的项目地址是:https://github.com/tox-dev/tox 其核心作用是支持创建隔离的 Py…