關於本人的package,情況比較簡單,所有的.py文件全部放到了一個叫做FundsData的文件夾下(package下),上層目錄也叫FundsData(其實叫什么都可以),其下放了setup.py. 關於具體情況,請參見GitHub上的內容:https://github.com/FinixLei/FundsData
而setup.py 的內容如下:
- from distutils.core import setup
- PACKAGE = "FundsData"
- NAME = "FundsData"
- DESCRIPTION = "This package can download funds data from http://huobijijin.com and then analyze the data for giving valuable funds."
- AUTHOR = "Finix Lei"
- AUTHOR_EMAIL = "finixlei@gmail.com"
- URL = "https://github.com/FinixLei/FundsData"
- VERSION = __import__(PACKAGE).__version__
- setup(
- name=NAME,
- version=VERSION,
- description=DESCRIPTION,
- # long_description=read("README.md"),
- author=AUTHOR,
- author_email=AUTHOR_EMAIL,
- license="Apache License, Version 2.0",
- url=URL,
- packages=["FundsData"],
- classifiers=[
- "Development Status :: 3 - Alpha",
- "Environment :: Web Environment",
- "Intended Audience :: Developers",
- "Operating System :: OS Independent",
- "Programming Language :: Python",
- ],
- zip_safe=False,
- )
要想成功運行setup.py將自己的python腳本打包上傳到PYPI上,首先要安裝setuptools包。在Windows上只要下載個windows專用的python 2.7,自然就有了setuptools和distutils;而在Linux上,要自己用pip裝一下,或者運行下python ez_setup.py來安裝。至於哪里去弄ez_setup.py,網上一搜到處是,就不贅述了。
關於setuptools和distutils的區別,我這里的描述不夠清晰,大家可以參看:http://www.cnblogs.com/aguncn/p/3427707.html
當有了distutils之后(一般都有,這是自帶的),運行如下命令就可以在PYPI上注冊、自己build並上傳到PYPI上了:
- python setup.py register sdist upload
但是,是如何連上PYPI的呢?當然,你要先注冊一個帳號。然后寫一個.pypirc文件如下,並將其放到~目錄下:
- [distutils]
- index-servers = pypi
- [pypi]
- username:xxx
- password:yyy
好了,一切成功后,你就可以看到類似這樣的網頁生成在PYPI上了:
https://pypi.python.org/pypi/FundsData
如README.md所述,使用pip的安裝方法如下:
- sudo pip install FundsData
運行方法為:
- python -mFundsData.funds_data -h
- python -mFundsData.funds_data