Python 诱变剂在尝试读取m4b文件时引发错误
这是我在这的第一篇文章。我试图在Python 3上使用诱变剂读取m4b文件。这是我正在使用的代码Python 诱变剂在尝试读取m4b文件时引发错误,python,mutagen,Python,Mutagen,这是我在这的第一篇文章。我试图在Python 3上使用诱变剂读取m4b文件。这是我正在使用的代码 for file in os.listdir(workingdir): if file.endswith('.m4b'): workingdirectory = 'my/directory/' commandtoexecute = "" metadata = MP4(file) print('read') xa9ART1 = met
for file in os.listdir(workingdir):
if file.endswith('.m4b'):
workingdirectory = 'my/directory/'
commandtoexecute = ""
metadata = MP4(file)
print('read')
xa9ART1 = metadata['\xa9ART']
xa9nam1 = metadata['\xa9nam']
xa9alb1 = metadata['\xa9alb']
这是我得到的错误
Traceback (most recent call last):
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 183, in _parse_esds
decSpecificInfo = ES_Descriptor.parse(fileobj)
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 240, in parse
instance = cls(fileobj, length)
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 278, in __init__
self.decConfigDescr = DecoderConfigDescriptor.parse(fileobj)
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 240, in parse
instance = cls(fileobj, length)
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 315, in __init__
self.decSpecificInfo = DecoderSpecificInfo.parse(fileobj)
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 243, in parse
raise DescriptorError("descriptor parsing read too much data")
mutagen.mp4._as_entry.DescriptorError: descriptor parsing read too much data
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Python37\lib\site-packages\mutagen\mp4\__init__.py", line 1014, in _parse_stsd
entry = AudioSampleEntry(entry_atom, entry_fileobj)
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 79, in __init__
self._parse_esds(extra, fileobj)
File "C:\Python37\lib\site-packages\mutagen\mp4\_as_entry.py", line 185, in _parse_esds
raise ASEntryError(e)
mutagen.mp4._as_entry.ASEntryError: descriptor parsing read too much data
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\aud.py", line 944, in <module>
my_function()
File "C:\Users\Administrator\Desktop\aud.py", line 336, in create_rar
metadata = MP4(file)
File "C:\Python37\lib\site-packages\mutagen\_file.py", line 49, in __init__
self.load(*args, **kwargs)
File "C:\Python37\lib\site-packages\mutagen\_util.py", line 140, in wrapper
return func(self, h, *args, **kwargs)
File "C:\Python37\lib\site-packages\mutagen\mp4\__init__.py", line 1061, in load
self.info.load(atoms, fileobj)
File "C:\Python37\lib\site-packages\mutagen\_util.py", line 169, in wrapper
return func(*args, **kwargs)
File "C:\Python37\lib\site-packages\mutagen\mp4\__init__.py", line 976, in load
self._parse_stsd(atom, fileobj)
File "C:\Python37\lib\site-packages\mutagen\mp4\__init__.py", line 1016, in _parse_stsd
raise MP4StreamInfoError(e)
mutagen.mp4.MP4StreamInfoError: descriptor parsing read too much data
回溯(最近一次呼叫最后一次):
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as_entry.py”,第183行,在\u parse\u esds中
decspecifiinfo=ES_Descriptor.parse(fileobj)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as_entry.py”,第240行,在parse中
实例=cls(fileobj,长度)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as_entry.py”,第278行,在\uu init中__
self.decConfigDescr=DecoderConfigDescriptor.parse(fileobj)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as_entry.py”,第240行,在parse中
实例=cls(fileobj,长度)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as_entry.py”,第315行,在u init中__
self.decsspecificinfo=decodersspecificinfo.parse(fileobj)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as_entry.py”,解析中第243行
引发描述符错误(“描述符解析读取太多数据”)
诱变剂.mp4.\u as\u entry.descriptor错误:描述符解析读取了太多数据
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“C:\Python37\lib\site packages\诱变剂\mp4\\uuu init\uu.py”,第1014行,位于\u parse\u stsd中
entry=AudioSampleEntry(entry\u atom,entry\u fileobj)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as_entry.py”,第79行,在\uu init中__
self._parse_esds(额外,fileobj)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\u as\u entry.py”,第185行,在esds中
升起一个入口(e)
诱变剂.mp4.\u as\u entry.ASEntryError:描述符解析读取的数据太多
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“C:\Users\Administrator\Desktop\aud.py”,第944行,在
my_函数()
文件“C:\Users\Administrator\Desktop\aud.py”,第336行,在create\u rar中
元数据=MP4(文件)
文件“C:\Python37\lib\site packages\诱变剂\\u File.py”,第49行,在\uuu init中__
自加载(*args,**kwargs)
文件“C:\Python37\lib\site packages\诱变剂\\u util.py”,第140行,在包装器中
返回函数(self,h,*args,**kwargs)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\uuuu init\uuuu.py”,第1061行,已加载
self.info.load(atoms,fileobj)
文件“C:\Python37\lib\site packages\诱变剂\\u util.py”,第169行,在包装器中
返回函数(*args,**kwargs)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\uuuu init\uuuu.py”,第976行,已加载
self.\u parse\u stsd(atom、fileobj)
文件“C:\Python37\lib\site packages\诱变剂\mp4\\uuuu init\uuuu.py”,第1016行,位于\u parse\u stsd中
raise MP4StreamInfoError(e)
诱变剂.mp4.MP4StreamInfoError:描述符解析读取的数据太多
我已经在几部音频上试过几次了,但对我来说似乎一直是这样。我很高兴从这里得到帮助
谢谢