Questa è la soluzione che ho finito usando:
import pip
def install(package):
# Debugging
# pip.main(["install", "--pre", "--upgrade", "--no-index",
# "--find-links=.", package, "--log-file", "log.txt", "-vv"])
pip.main(["install", "--upgrade", "--no-index", "--find-links=.", package])
if __name__ == "__main__":
install("mypackagename")
raw_input("Press Enter to Exit...\n")
L'ho messo insieme da esempi di installazione di pip e dalla risposta di Rikard su un'altra domanda . L'argomento "--pre" consente di installare versioni non di produzione. L'argomento "--no-index" evita di cercare gli indici PyPI. "--Find-links =." ricerche di argomenti nella cartella locale (può essere relativa o assoluta). Ho usato gli argomenti "--log-file", "log.txt" e "-vv" per il debug. L'argomento "--upgrade" consente di installare versioni più recenti rispetto a quelle precedenti.
Ho anche trovato un buon modo per disinstallarli. Ciò è utile quando si hanno diversi ambienti Python diversi. È lo stesso formato di base, basta usare "disinstalla" invece di "installa", con una misura di sicurezza per prevenire disinstallazioni indesiderate:
import pip
def uninstall(package):
response = raw_input("Uninstall '%s'? [y/n]:\n" % package)
if "y" in response.lower():
# Debugging
# pip.main(["uninstall", package, "-vv"])
pip.main(["uninstall", package])
pass
if __name__ == "__main__":
uninstall("mypackagename")
raw_input("Press Enter to Exit...\n")
La cartella locale contiene questi file: install.py, uninstall.py, mypackagename-1.0.zip
pip install <Path-to-WHL-file>
.