PyStemmer:ImportError:DLL加载失败:动态链接库(DLL)初始化例程失败
问题描述:
我正在使用Python包字袋,bow.py
(https://github.com/dmiro/bagofwords/blob/master/bow.py)。PyStemmer:ImportError:DLL加载失败:动态链接库(DLL)初始化例程失败
基本上我运行以下命令:
dc = bow.DefaultDocument()
dc.read_text("paragraph string here")
我得到以下跟踪:
Traceback (most recent call last):
File "bag_of_words.py", line 93, in <module>
if __name__ == "__main__": main()
File "bag_of_words.py", line 27, in main
bag_of_words_classifier_test("item", "category_1", "category_2")
File "bag_of_words.py", line 73, in bag_of_words_classifier_test
dc.read_text("paragraph string here")
File "C:\Users\User Name\Anaconda3\lib\site-packages\bow.py", line 339, in read_text
self._read(None, text)
File "C:\Users\User Name\Anaconda3\lib\site-packages\bow.py", line 326, in _read
words = self.tokenizer(text)
File "C:\Users\User Name\Anaconda3\lib\site-packages\bow.py", line 306, in tokenizer
words = self.after_tokenizer(WordFilters, words)
File "C:\Users\User Name\Anaconda3\lib\site-packages\bow.py", line 517, in after_tokenizer
words = wordfilters.stemming(self.lang, self.stemming, words)
File "C:\Users\User Name\Anaconda3\lib\site-packages\bow.py", line 250, in stemming
import Stemmer as stemmer
ImportError: DLL load failed: A dynamic link library (DLL) initialization routine failed.
我想这可能是与PyStemmer一个问题,所以我试图迫使PIP3重装/升级但得到相同的错误。有什么想法吗?
答
好了,所以这并不能真正解决问题,但它是一个解决方法:
如果你打开bow.py
你可以import snowballstemmer as stemmer
(而不是import Stemmer as stemmer
)取代线250,然后将其替换线252 stemmer = stemmer.stemmer(lang)
(而不是stemmer = stemmer.Stemmer(lang)
)。等价的方法只需要从大写更改为小写。