Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pyinstaller jieba.analyse打包问题 #887

Closed
Olvi73 opened this issue Nov 1, 2020 · 1 comment
Closed

pyinstaller jieba.analyse打包问题 #887

Olvi73 opened this issue Nov 1, 2020 · 1 comment

Comments

@Olvi73
Copy link

Olvi73 commented Nov 1, 2020

import jieba
jieba.set_dictionary(r"./dict.txt")
jieba.initialize()

这样只能解决dict的问题,那要是用jieba.analyse

import jieba
jieba.set_dictionary(r"./dict.txt")
jieba.initialize()
import jieba.analyse
jieba.analyse.set_idf_path(r"./idf.txt")

我在打包前测试了下,dict能够成功引用,但是不能引用idf文件,这样打包出来还是会出错

Building prefix dict from F:\blog\163MusicSA_PE\dict.txt ...
Loading model from cache C:\Users\Oliver\AppData\Local\Temp\jieba.ucac74aa1890c21f6f2c3fec0400f63d8.cache
Loading model cost 0.790 seconds.
Prefix dict has been built successfully.
Traceback (most recent call last):
  File "F:/blog/163MusicSA_PE/main.py", line 11, in <module>
    import src.word_cloud_by_artist
  File "F:\blog\163MusicSA_PE\src\word_cloud_by_artist.py", line 12, in <module>
    import jieba.analyse
  File "C:\Users\Oliver\.virtualenvs\163MusicSA_PE-R0VcDzoP\lib\site-packages\jieba\analyse\__init__.py", line 9, in <module>
    default_tfidf = TFIDF()
  File "C:\Users\Oliver\.virtualenvs\163MusicSA_PE-R0VcDzoP\lib\site-packages\jieba\analyse\tfidf.py", line 65, in __init__
    self.idf_loader = IDFLoader(idf_path or DEFAULT_IDF)
  File "C:\Users\Oliver\.virtualenvs\163MusicSA_PE-R0VcDzoP\lib\site-packages\jieba\analyse\tfidf.py", line 42, in __init__
    self.set_new_path(idf_path)
  File "C:\Users\Oliver\.virtualenvs\163MusicSA_PE-R0VcDzoP\lib\site-packages\jieba\analyse\tfidf.py", line 47, in set_new_path
    content = open(new_idf_path, 'rb').read().decode('utf-8')
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\Oliver\\.virtualenvs\\163MusicSA_PE-R0VcDzoP\\lib\\site-packages\\jieba\\analyse\\idf.txt'
@Olvi73
Copy link
Author

Olvi73 commented Nov 1, 2020

已解决 参考地址
利用spec自定义打包配置,将jieba中的数据存放到固定文件夹
image
然后将spec配置修改为
image
我使用了这种方法打包的项目地址

@Olvi73 Olvi73 closed this as completed Nov 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant