Vogelrindendatenbank. Es gibt eine API, die von json verarbeitet werden kann. Dieses Mal habe ich Python verwendet, um alle Anrufe der Gattung Fulica (Gattung Ooban) in Japan zu sammeln.
import requests
import json
import urllib
url = "https://www.xeno-canto.org/api/2/recordings?query=gen:Fulica+cnt:japan"
#Holen Sie sich Json(requests.get)
response = requests.get(url)
jsonData = response.json()["recordings"]
#Download-Bereich(Der Dateiname lautet{id}.mp3)
for data in jsonData:
url = ("http:"+data["file"])
title = data["id"]
urllib.request.urlretrieve(url,"{0}.mp3".format(title))
Gemäß der Xeno-Canto-API-Dokumentation ist die Abfrage
gen
: Gattungsnamesp
: specific namessp
: subsupecific nameen
: english namecnt
: country
Usw. kann angegeben werden.Von dieser Zeit
url = "https://www.xeno-canto.org/api/2/recordings?query=gen:Fulica+cnt:japan"
Dann wird es durch "gen: Fulica", "cut: Japan" spezifiziert.
url = ("http:"+data["file"])
In befindet sich die Download-URL im Schlüssel "[" Datei "]". (Da "http:" nicht angehängt ist, fügen Sie es hinzu.)
python 3.7.4 (Anaconda) MacOS Catalina 10.15.5
Recommended Posts