How should I handle importing third-party libraries within my setup.py script?

前端 未结 3 632
心在旅途
心在旅途 2021-01-12 08:40

I\'m developing a Python application and in the process of branching off a release. I\'ve got a PyPI server set up on a company server and I\'ve copied a source distribution

3条回答
  •  粉色の甜心
    2021-01-12 09:12

    You could use pip to install the package programmatically if the import fails:

    try:
        import appdirs
    except ImportError:
        import pip
        pip.main(['install', 'appdirs'])
        import appdirs
    

    In some circumstances you may need to use importlib or __import__ to import the package after pip.main or referesh the PATH variable. It could also be worthwhile to include a verification if the user really wants to install that package before installing it.

    I used a lot of the examples from "Installing python module within code" and I haven't personally tried used this in setup.py files but it looks like it could be a solution for your question.

提交回复
热议问题