阅读 python 用 scala 泡菜

Read python pickle with scala

我继承了一个数据库,其中的值存储为 Python 腌制对象。有没有办法在 Scala 中取消这些值(无需在内部调用 Python)?

一般来说,您需要在内部调用 python,因为 pickle 允许 类 到 运行 任意代码进行 unpickling。 (搜索 "python pickle security",您会发现很多 interesting discussions 说明为什么这意味着您不应该从不受信任的来源中提取信息。)

我怀疑它可以用于更常见的情况,但是,如果您的腌制数据中没有什么特别不寻常的地方。 This simliar question has an answer suggesting a Java library called Pyrolite.