Я создаю инструмент pypi, который автоматически устанавливает библиотеки python из файла json, и print
, если установка завершена или нет.Это мой setup.py
файл:
import setuptools
import pip
from subprocess import call
for package in 'requirements':
try:
call("pip install "+package, shell=True)
print("Install success")
except:
print("Install failed for "+package)
with open("README.md", "r") as fh:
long_description = fh.read()
fh.close()
setuptools.setup(
name="json123",
version="0.0.1",
author="hari",
author_email="hari@gmail.com",
description="Auto install of python packages",
long_description=long_description,
long_description_content_type="text/markdown",
classifiers=["Programming Language :: Python :: 3",],
include_package_data=True,
zip_safe=False,
py_package=['json123'],
entry_points='''
[console_scripts]
json123=json123:main
''',
)
json123.py - это скрипт, который возьмет «зависимости» из файла json и скопирует его в файл needs.txt (файл require.txt создан этой программой)
import json
def main():
f = open( "package.json" , "rb" )
d = json.load(f)
f.close()
with open("requirements.txt", "w+") as fb:
for i,j in zip(d["dependencies"].keys(), d["dependencies"].values()):
line = "{}=={}\n".format(i, j.strip("^"))
fb.writelines(line)
fb.close()
Я также включил MANIFEST.in
, README.md
, package.json
(источник) и requirements.txt
вместе с вышеупомянутыми файлами.Для выполнения:
pip install -e . -r requirements.txt
-e .
для локальной установки и -r requirements.txt
для установки указанных библиотек.Когда я выполнил его, пакет был установлен:
Obtaining file:///C:/Users/ha/json123
Installing collected packages: json123
Running setup.py develop for json123
Successfully installed json123
Он не устанавливается должным образом.