如何在Python中解析.sketch文件

如何在Python中解析.sketch文件,python,macos,sketch-3,Python,Macos,Sketch 3,如何解析sketch-mac应用程序生成的.sketch文件 我知道psd_工具可用于解析Adobe Photoshop中生成的.psd文件,尤其是因为我不熟悉草图,我不知道psd_工具有任何等价物。不过,这可能会对您有所帮助。否则,您可能需要创建自己的解析器。我没有任何草图方面的经验,但我下载了一个示例.Sketch文件,结果它是一个“SQLite 3.x数据库”。这意味着您可以使用python的sqlite3模块打开它 碰巧我有一些代码,我编写这些代码是为了检查另一个sqlite数据库,所以

如何解析sketch-mac应用程序生成的
.sketch
文件


我知道psd_工具可用于解析
Adobe Photoshop

中生成的
.psd
文件,尤其是因为我不熟悉草图,我不知道psd_工具有任何等价物。不过,这可能会对您有所帮助。否则,您可能需要创建自己的解析器。

我没有任何草图方面的经验,但我下载了一个示例
.Sketch
文件,结果它是一个“SQLite 3.x数据库”。这意味着您可以使用python的
sqlite3
模块打开它

碰巧我有一些代码,我编写这些代码是为了检查另一个sqlite数据库,所以我看了看:它包含一个元数据表和一个“有效载荷”表(分别称为
metadata
payload
),这两个表都只有
name
value
列。然而,
payload
表只有一行,在这两个表中,值似乎都是其他格式的容器,我不认识。因此,尽管sqlite3是文件格式,但它似乎只是洋葱的外层。

编辑: 新的草图文件格式(>43)非常友好。 它实际上是一个zip文件夹,其中包含描述内容的资产和json文件。

谢谢您的帮助,但我要找的是一个专门用python编写的模块,用于解析
.sketch
文件数据,而不是转换它。我在互联网上搜索了一段时间,但只找到了coffeescript中的
framerJs
。不幸的是,谷歌搜索“python草图”并没有提供任何有用的信息。除非你想找个乐子…:-)确实如此:DSketch支持。你可以制作一个插件并导出草图内容。这是一个开始。谢谢。我会尽快调查并更新我的发现。嘿!我反复核对了你提供的信息,我认为你说到点子上了。
有效负载
表和
元数据
表中的数据为
blob格式
二进制大对象(BLOB)
基本上是作为单个实体存储在数据库管理系统中的二进制数据的集合,通常是
图像
音频
或任何其他
多媒体
文件,在这种情况下是
图像层
。我认为它可以很容易地解析成
json
格式。我认为你的答案是正确的。干杯,谢谢你为我指明了正确的方向!很高兴听到这个消息!谢谢你提供的后续信息。如果您获得工作代码,可以将文件转换为JSON(并且可能返回),请考虑在这里张贴。你可以期待其他人在将来也会有同样的问题。是的,当然可以。我一写完脚本就会在这里发布github链接!有关于hacking.sketch文件的新闻吗?虽然这个链接可以回答这个问题,但最好在这里包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能无效。-@谢谢你,我已经确定了我的答案。顺便说一句,在佩特解释之后,我理解了这个问题。