Ich versuche zu bekommen, die Länge einer mp3-Datei in meiner Ansicht nach zu lesen:Ungültige Datei Ausnahme zu versuchen, Datei mit Mutagen
from mutagen.mp3 import MP3
def Upload(request):
data = {}
data['modal'] = render_to_string('partials/modals/upload.html')
if request.method == 'POST':
files = request.FILES
...
mp3 = files.get('track')
mp3 = MP3(mp3);
print(mp3.info.length);
Ich habe überprüft, dass die Datei nicht beschädigt ist oder ungültig, aber wenn ich versuche, diese letzten Zeilen Code zu tun, die ich erhalten:
TypeError: invalid file: <TemporaryUploadedFile: mySong.mp3 (audio/mpeg)>
ich verstehe nicht, warum es mich gibt, dass, weil ich die Datei lesen kann, und ich kann sogar sagen django die Datei senden zu meinem Modell, und es spart zu dis k. Warum funktioniert das nicht?
Ich bin mir nicht sicher, was das Problem ist, aber ich empfehle ein Formular zu verwenden, um 'request.FILES' zu erfassen, anstatt es manuell zu speichern wie' mp3 = MP3 (mp3) '. –
@ShangWang Meine Web-App verlässt sich stark auf Ajax-Anfragen und die Verwendung eines Formulars ist in diesem Fall nicht ideal. –