2016-05-09 7 views
2

Ich versuche mit der API von YouTubeinMp3 ein Skript zu schreiben, das die Musikdatei beim Senden einer Anfrage an einen bestimmten Endpunkt herunterlädt.Herunterladen einer Datei über das Internet mit Python

import requests 
import json 

si = {'video': 'https://www.youtube.com/watch?v=zTgLhIjiSas', 'autostart': 1} 
res = requests.get("https://www.youtubeinmp3.com/download/", params = si) 
print len(res.content) 

nun die resultierende URL dh https://www.youtubeinmp3.com/download/?video=https://www.youtube.com/watch?v=zTgLhIjiSas&autostart=1 startet automatisch die entsprechende MP3-Datei des gegebenen Videos herunterzuladen.

Beim Ausführen des obigen Skripts wird die Datei jedoch nicht heruntergeladen. Die zurückgegebene status_code ist 200. Was scheint mit meinem Code nicht in Ordnung zu sein?

Antwort

3

Die generierte URL führt zu einer HTML-Seite, die Sie zu einer anderen Seite weiterleitet, die einen Download auslöst. Diese URL ist keine direkte URL zur mp3-Datei selbst. Um die MP3-URL zu erhalten, können Sie diese Seiten abkratzen.

1

Bevor Sie das oben genannte ausführen, müssen Sie das Paket youtube_dl mit pip installieren.
Öffnen Sie Ihr Terminal/cmd und geben Sie ein:

pip install youtube_dl 
Verwandte Themen