我创建了一个开源python包,以使用不同的翻译器翻译文本或自动执行翻译,并将其发布在pypi上。到目前为止,它运行良好,我收到了一些很好的反馈和批评。
现在我不在这里促进项目。相反,我想问一问,如何或什么方法使终端上的软件包可用。就像在我的示例中一样,项目名称为deep_translator。我的目标是能够从终端使用它。正是这样的:
$ deep_translator translate --translator "google" --from "german" --to "english" --text="blabla"
我了解,如果有人在我的计算机上安装了我的软件包,则该软件包很可能会添加到路径中。因此,可以从终端访问它,但这必须取决于OS,对吗?
那么正确的方法是什么。我正在使用python> = 3.6,但这实际上是一个普遍的问题,而不是特定于python的问题。提前致谢
您可以在文件中注册命令行脚本setup.py
。安装软件包时,这会将二进制文件放在路径上,该路径将调用配置的功能。例如:
# setup.py
setup(
...
entry_points = {
'console_scripts': ['deep_translator=deep_translator.main_module:main_func'],
}
...
)
这main_module
是一个假设的模块main_func
,其中包含将要调用的功能。在此函数中,您可以设置ArgumentParser
和解析参数:
# main_module.py
def main_func():
parser = argparse.ArgumentParser()
parser.add_argument(...)
# more arguments here
args = parser.parse_args()
# do stuff with args
__main__.py
您还可以使用顶级__main__.py
模块,然后通过-m
开关调用软件包:
python -m deep_translator <args-go-here>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句