2 回答
TA贡献1829条经验 获得超13个赞
我能够在模拟器上重现类似的东西。就我而言,根本原因是下载失败并出现 DECRYPTION_FAILED_OR_BAD_RECORD_MAC 错误,留下不完整的 ZIP 文件。
这似乎是模拟器的低级问题,并非 Python 特有的。如果您可以确认您有同样的问题(通过在nltk.download
logcat输出中查看 DECRYPTION_FAILED_OR_BAD_RECORD_MAC),
nltk.download
您可以通过在循环中重复调用直到返回 true 来解决此问题。为了节省时间,您可能应该只下载您需要的数据文件。您只需调用相应的函数并查看错误消息即可找出这些是什么,例如:
>>> nltk.pos_tag_sents([["hello", "world"]])
...
LookupError:
**********************************************************************
Resource [93maveraged_perceptron_tagger[0m not found.
Please use the NLTK Downloader to obtain the resource:
[31m>>> import nltk
>>> nltk.download('averaged_perceptron_tagger')
然后您可以将其添加到您的代码中:
while not nltk.download('averaged_perceptron_tagger'):
print("Retrying download")
经过几次迭代后成功了,然后我就可以nltk.pos_tag_sents成功调用了。
TA贡献1862条经验 获得超6个赞
将其添加到您的 python 脚本中:
while not nltk.download('punkt'): return ("Retrying download punkt")
另外,在您的 AndroidManifest 中,不要忘记添加这些权限:
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
添加回答
举报