我试图使用模块compsim
来获取公司名称之间匹配的概率:
import csv
import sys
sys.path.insert(0,'C:/Users/MyName/Documents/Python Scripts/compsim-0.0.3')
from compsim.company_name_similarity import CompanyNameSimilarity
cm = CompanyNameSimilarity()
cm.match_score("Rombus Solutions ltd", "Axia Solutions pvt ltd")
但我得到了一个错误:
File "C:\Users\MyName\Anaconda3\lib\site-packages\compsim-0.0.3-py3.6.egg\compsim\company_name_similarity.py", line 18, in preprocess
return field.encode('utf-8').lower().replace('\n','').replace("'",' ').replace('\r','').replace('/',' ').\
TypeError: a bytes-like object is required, not 'str'
请帮帮我,我卡住了。你知道吗
谢谢!你知道吗
在我看来,
compsim
模块中有一个bug。str.encode()
返回一个bytes对象,在该对象中只能替换其他bytes对象而不能替换字符串。你知道吗替换字节工作:
省略
encode
同样有效:一种解决方案是在本地修改源代码。删除
.encode('utf-8')
应该是安全的,因为python3默认是utf-8编码的。你知道吗相关问题 更多 >
编程相关推荐