有什麼辦法從python代碼中調用已安裝的python egg?我需要從Python代碼中CAL獅身人面像文檔 發生器,目前我正在做這樣的:訪問Python中的雞蛋?
os.system("sphinx-build.exe -b html c:\\src c:\\dst")
這工作,但需要一些額外的配置:「腳本」文件夾 內python安裝文件夾需要添加到系統路徑 (我在Windows上)。是否更好,本地方式來調用已安裝的python 雞蛋?
有什麼辦法從python代碼中調用已安裝的python egg?我需要從Python代碼中CAL獅身人面像文檔 發生器,目前我正在做這樣的:訪問Python中的雞蛋?
os.system("sphinx-build.exe -b html c:\\src c:\\dst")
這工作,但需要一些額外的配置:「腳本」文件夾 內python安裝文件夾需要添加到系統路徑 (我在Windows上)。是否更好,本地方式來調用已安裝的python 雞蛋?
所以基本上,你想使用獅身人面像作爲圖書館?
這裏是sphinx-build
做:
from pkg_resources import load_entry_point
load_entry_point('Sphinx==0.5.1', 'console_scripts', 'sphinx-build')()
在EGG-INFO目錄entry-points.txt
來看,注意到獅身人面像建造的入口點是sphinx.main
功能(位於__init__.py
)。
看看那個並重復它的功能,你可以使用sphinx作爲庫。我沒有詳細查看代碼,但似乎sphinx-build
-命令的大部分是通過Sphinx
對象上的build
方法完成的。
在你的代碼,你會做這樣的事情:
from sphinx.application import Sphinx
s = Sphinx(...)
s.build(...)
你需要看看獅身人面像源代碼的參數計算出Sphinx.__init__()
和Sphinx.build()
將蛋添加到PYTHONPATH或sys.path將允許您訪問其中的模塊和包。
-1:無參考文檔:http://docs.python.org/tutorial/modules.html – 2009-04-22 10:41:50