Python 用户从shell执行的pelican可执行脚本是什么?

Python 用户从shell执行的pelican可执行脚本是什么?,python,executable,pelican,Python,Executable,Pelican,我正试图通过子流程调用pelican来自动发布博客,但是当我尝试在shell中打开哪个pelican时。我找到了这个 #!/usr/bin/python # EASY-INSTALL-ENTRY-SCRIPT: 'pelican==3.5.0','console_scripts','pelican' __requires__ = 'pelican==3.5.0' import sys from pkg_resources import load_entry_point sys.exit(

我正试图通过子流程调用pelican来自动发布博客,但是当我尝试在shell中打开哪个pelican时。我找到了这个

#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'pelican==3.5.0','console_scripts','pelican'
__requires__ = 'pelican==3.5.0'
import sys
from pkg_resources import load_entry_point

sys.exit(
   load_entry_point('pelican==3.5.0', 'console_scripts', 'pelican')()
)
当有人将参数从shell传递给pelican时,我希望看到对main函数的调用。(我不是说pelican quickstart)

我试图研究pelican项目,我认为它是具有main函数的
\uuu init\uuuu.py
,但通常我会有一个调用此main函数的可执行包装器,所以有人可以将我重定向到上面的代码传递用户传递的参数的函数吗?

来自:

因此,
pelican
命令的入口点是
pelican
模块中的
main()
函数;您还可以通过
导入鹈鹕来访问它;pelican.main()
。(类似地,对于
pelican quickstart
导入pelican.tools.pelican\u quickstart;pelican.tools.pelican\u quickstart.main()

要查找文件,请执行以下操作:

import pelican
print pelican.__file__
…或者,要直接获取
main
函数的句柄:

>>> from pkg_resources import load_entry_point
>>> mainfunc = load_entry_point('pelican', 'console_scripts', 'pelican')
>>> print mainfunc.__module__
'pelican'
>>> mainfunc()
WARNING: Feeds generated without SITEURL set properly may not be valid

正如您所期望的,这些包装器是由easy_install生成的。但是,这是一个实现细节——为什么您需要知道这一点才能通过
子流程
模块调用它?如果您想直接调用
main()
函数,而不需要经过包装器,那么这些信息将更加相关。
>>> from pkg_resources import load_entry_point
>>> mainfunc = load_entry_point('pelican', 'console_scripts', 'pelican')
>>> print mainfunc.__module__
'pelican'
>>> mainfunc()
WARNING: Feeds generated without SITEURL set properly may not be valid