更改数据模型架构时出错。无法对数据库进行反序列化。JSON 输入的格式不正确。检查路径 '',第 0 行,位置 0。

Error while changing data model schema. Cannot de-serialize Database. The JSON input is not properly formed. Check path '', line 0, position 0."

提问人:VISHNU M 提问时间:5/26/2022 最后编辑:VISHNU M 更新时间:11/17/2023 访问量:208

问:

我试图对powerbi pbit文件中的数据模型架构进行一些更改。我正在使用 python 来自动化整个过程(因为有很多仪表板需要更新)。遵循的步骤如下:

  1. 使用 from dax_extract import read_data_model_schema导入数据模型。
  2. 更新分区中的数据源
  3. 将 DataModel 文件重新加载(保存)到 PBIT 文件。

我能够导入和更新文件。将新的数据模型保存在pbit文件中后,当我打开时,它给了我一个错误“无法反序列化数据库。JSON 输入的格式不正确。检查路径 '',第 0 行,位置 0。 我很确定对文件所做的更改是正确的。有人能告诉我为什么会这样吗?

Python JSON 错误处理 PowerBI 负载

评论

0赞 Riceblades 5/26/2022
请在发表评论之前阅读此内容
0赞 another victim of the mouse 5/26/2022
请提供足够的代码,以便其他人可以更好地理解或重现问题。

答:

0赞 bounav 11/15/2023 #1

TLDR:在我的案例中,文件的编码是罪魁祸首。

我正在做类似的事情(全部在 C# 中)并且遇到了同样非常无益的错误。

使用 ,我打开了我的原始文件,可以看到文件的编码是 。Notepad++model.bimUTF-8

然后我打开了我用脚本修改的文件,看到编码是 .UTF-8-BOM

最后,在将文件转换回(您可以使用 Notepad++ 执行此操作)并保存它后,我能够使用 PowerBI Desktop 打开修改后的报表。UTF-8.pbip