我有一些Primavera .xer文件。 我可以在记事本中打开这些文件,然后看到有一些文本数据(看起来像数据库数据)。
这些文件是否有Python解析器?
答案 0 :(得分:0)
不是理想的解决方案,但是您可以尝试使用MPXJ。 MPXJ本身是一个Java库,但是假设您可以从Python代码启动一个单独的进程,则可以将其转换为XER文件为JSON,这应该更容易使用(这是MPXJ Ruby gem所采用的方法,包装执行转换的Java代码,然后读取结果JSON)。您还应该发现MPXJ生成的JSON中的计划数据结构比XER文件的内容更易于使用,尽管您无法访问原始XER文件中的每个属性。
此过程的红宝石版本可以在here中找到。总而言之,命令行如下所示:
java -cp <classpath> net.sf.mpxj.sample.MpxjConvert your-file.xer your-file.json
您只需要设置供应<classpath>
即可告诉JVM MPXJ JAR及其依赖项在哪里。
答案 1 :(得分:0)
Primavera P6 XER格式确实容易受到CSV模块分析的影响。它基本上是关系数据库的制表符分隔的备份格式。
第一行是有关文件的一些元信息。此后,每一行都以一个代码开始,该代码告诉该行的其余部分包含什么:
其余部分完全取决于您要如何使用数据。就我而言,我首先将数据直接放入(新的)SQLITE数据库中,然后再担心应用程序。
答案 2 :(得分:0)
我知道有点晚了。但是,我一直在寻找类似的答案,但我找不到。所以,我开始开发一个名为 PyP6XER 的开源包。你可以 pip install 或者在 github 上贡献开发 https://github.com/HassanEmam/PyP6Xer
请注意,该软件包仍处于早期阶段,并且没有很好的文档记录。