Voici la solution que j'ai finalement utilisée:
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")
J'ai reconstitué cela à partir d' exemples d'installation de pip ainsi que de la réponse de Rikard sur une autre question . L'argument "--pre" vous permet d'installer des versions hors production. L'argument "--no-index" évite de rechercher les index PyPI. Le "--find-links =." recherches d'arguments dans le dossier local (cela peut être relatif ou absolu). J'ai utilisé les arguments "--log-file", "log.txt" et "-vv" pour le débogage. L'argument "--upgrade" vous permet d'installer des versions plus récentes par rapport aux anciennes.
J'ai également trouvé un bon moyen de les désinstaller. Ceci est utile lorsque vous disposez de plusieurs environnements Python différents. C'est le même format de base, en utilisant simplement "désinstaller" au lieu de "installer", avec une mesure de sécurité pour éviter les désinstallations involontaires:
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")
Le dossier local contient ces fichiers: install.py, uninstall.py, mypackagename-1.0.zip
pip install <Path-to-WHL-file>
.