我想使用小鸭从任何字符串中提取时间实体。
我正在尝试使用基本代码来使用小鸭。
from duckling import DucklingWrapper
d = DucklingWrapper()
print(d.parse_time(u'Let\'s meet at 11:45am'))
为此,我收到以下错误。int() 参数必须是字符串、类似字节的对象或数字,而不是“java.lang.String”
有人可以帮我吗?
简短回答:强制您的 jpype 版本低于 0.8。即 pip install Jpype1==0.7.5
更长的答案:这是由于 Duckling 的依赖 JPype 之一。如果您深入研究代码,您会发现在使用 JPype 启动 JVM 时,需要传递一个参数“convertStrings”。在 V0.8 之前,此参数默认设置为“true”,但之后切换为“false”。如果您可以修改包代码,这应该是 Duckling 中的一个简单修复。如果没有,那么降级您的 Jpype 版本也可以。
这是小鸭和 Jpype 之间的不兼容问题。
这对我有用:
pip install --force-reinstall JPype1==0.6.3