问题
Below is my setup.py code :
from os import path
import sys
python_version = sys.version_info[:2]
if python_version < (2, 6):
raise Exception("This version of xlrd requires Python 2.6 or above. "
"For older versions of Python, you can use the 0.8 series.")
av = sys.argv
if len(av) > 1 and av[1].lower() == "--egg":
del av[1]
from setuptools import setup
else:
from distutils.core import setup
from xlrd.xlrd.info import __VERSION__ as p
from xlwt.xlwt import __VERSION__
DESCRIPTION = (
'Library to create spreadsheet files compatible with '
'MS Excel 97/2000/XP/2003 XLS files, '
'on any platform, with Python 2.3 to 2.7'
)
CLASSIFIERS = [
'Operating System :: OS Independent',
'Programming Language :: Python',
'License :: OSI Approved :: BSD License',
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Developers',
'Topic :: Software Development :: Libraries :: Python Modules',
'Topic :: Office/Business :: Financial :: Spreadsheet',
'Topic :: Database',
'Topic :: Internet :: WWW/HTTP :: Dynamic Content :: CGI Tools/Libraries',
]
KEYWORDS = (
'xls excel spreadsheet workbook worksheet pyExcelerator'
)
setup(
name = 'xlrd',
version = p,
author = 'John Machin',
author_email = 'sjmachin@lexicon.net',
url = 'http://www.python-excel.org/',
packages = ['xlrd'],
scripts = [
'xlrd/scripts/runxlrd.py',
],
package_data={
'xlrd/xlrd': [
'doc/*.htm*',
# 'doc/*.txt',
'examples/*.*',
],
},
keywords = ['xls', 'excel', 'spreadsheet', 'workbook'],
classifiers = [
'Development Status :: 5 - Production/Stable',
'Intended Audience :: Developers',
'License :: OSI Approved :: BSD License',
'Programming Language :: Python',
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 3',
'Operating System :: OS Independent',
'Topic :: Database',
'Topic :: Office/Business',
'Topic :: Software Development :: Libraries :: Python Modules',
],
)
setup (
name = 'xlwt',
version = __VERSION__,
maintainer = 'John Machin',
maintainer_email = 'sjmachin@lexicon.net',
url = 'http://www.python-excel.org/',
download_url = 'http://pypi.python.org/pypi/xlwt',
description = DESCRIPTION,
long_description = LONG_DESCRIPTION,
license = 'BSD',
platforms = 'Platform Independent',
packages = ['xlwt'],
keywords = KEYWORDS,
classifiers = CLASSIFIERS,
package_data = {
'xlwt/xlwt': [
'doc/*.*',
'examples/*.*',
'tests/*.*',
],
},
)
I have tried to marge setup.py
of both xlrd
and xlwt
here and trying to run master setup.py
to install both the modules at one shot. It is installing the modules but not the attributes so can't use those modules. Basically my need is to run a single script and install multiple modules in clients machine. Is is possible? Please guide me if ay other way I can do this . Thanks in advance.
回答1:
As an example of invoking setup.py of both packages. Let's consider that you are in a some top level directory with the following structure:
mydir
|
|--setup.sh # global setup script
|
|--xlrd
| |
| |--...
| |--setup.py
| |--...
|
|--xlwt
|
|--...
|--setup.py
|--...
A shell script is simple:
#!/bin/sh
python ./xlrd/setup.py install
python ./xlwt/setup.py install
A batch script should be pretty similar:
xlrd\setup.py install
xlwt\setup.py install
来源:https://stackoverflow.com/questions/19806510/python-setup-py-to-install-multiple-modules