You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何读取Minecraft的MCA文件?Python3读取遇Anvil-parser报错

解决Python读取MCA文件时的KeyError问题

报错原因分析

你遇到的KeyError: 'Tag Level does not exist'是因为anvil-parser库版本与MCA文件版本不兼容。Minecraft 1.18及以上版本修改了区块的NBT结构,将根标签从Level改为minecraft:chunk,旧版本anvil-parser仍在寻找旧的Level标签,因此触发报错。

解决步骤

  • 更新anvil-parser到最新版本
    执行以下命令升级库,新版本已适配新版Minecraft的NBT结构:
    pip install --upgrade anvil-parser
    
  • 验证MCA文件完整性
    确认MCA文件未损坏,可尝试用Minecraft客户端打开对应存档,检查目标区块能否正常加载。
  • 尝试替代库
    如果更新后仍有问题,可换用pyanvil或minecraft-data库,这些库对新版NBT格式的支持更全面。

报错回溯信息

Traceback (most recent call last):
  File "/Applications/nbt-editor/nbt-editor.py", line 141, in main
  chunk = anvil.Chunk.from_region(region, 19, 22)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/anvil/chunk.py", line 382, in from_region
return cls(nbt_data)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/anvil/chunk.py", line 55, in __init__
self.data = nbt_data['Level']
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/nbt/nbt.py", line 543, in __getitem__
raise KeyError("Tag %s does not exist" % key)
KeyError: 'Tag Level does not exist'

内容的提问来源于stack exchange,提问作者user18070793

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 18:05:30