【发布时间】:2021-08-21 13:21:14
【问题描述】:
我想将 nltk 语料库的某些部分添加到 setup.py 文件中。我通过设置自定义cmdclass 来关注here 的响应。我的设置文件如下所示。
from setuptools import setup
from setuptools.command.install import install as _install
class DownloadNLTK(install):
def run(self):
self.do_egg_install()
import nltk
nltk.download('wordnet')
nltk.download('punkt')
nltk.download('stopwords')
nltk.download('vader_lexicon')
setup(
install_requires=requirements,
python_requires='>=3.7',
cmdclass={'download_nltk': DownloadNLTK()}
)
但是,运行它,我得到这个错误:
Traceback (most recent call last):
File "setup.py", line 15, in <module>
'install': DownloadNLTK()}
TypeError: __init__() missing 1 required positional argument: 'dist'
我试图更好地理解需要什么,但我不得不说我在dist 上找到的here 的文档对我来说不是很清楚。有人可以帮助解决方法吗?谢谢!
【问题讨论】:
-
你的缩进明显错了;请edit 修复它。在本网站的桌面版本中,您可以通过粘贴代码、选择粘贴的块并输入 ctrl-K 来为您标记代码。
-
您似乎指的是
distutils的文档,它与seetuptools是分开的。查看您正在复制的示例,cmdclassdict 值可能应该是一个类,而不是返回该类实例的函数调用(所以取出最终的());但我没有尝试过你的代码,也不太明白它应该做什么。
标签: python nltk setuptools setup.py