``` python
import os
pytube import YouTube-ból
import kérések
import Soundcloud
bandcamp importból Bandcamp
bs4 importból BeautifulSoup
def YouTube_Downloader(url):
megpróbál:
# objektum létrehozása a YouTube használatával
# amelyet az elején importáltak
yt =Youtube (url)
# lehetséges formátum és felbontás
A rendszered szerint letöltött # jelenik meg
#itt
print("Elérhető megoldások:")
all_res =yt.streams.all()
for i in all_res:
nyomtat(i)
# a legnagyobb felbontású videó
# letöltve van kiválasztva
ys =yt.streams.get_highest_resolution()
# útvonal, ahol az összes videó mentésre kerül
yt_path =os.getcwd()
# videó letöltődik a megadottra
# hely
ys.download(yt_path)
print("Letöltés befejezve:", yt_path)
kivéve az e kivételt:
nyomtatás (str(e))
def Soundcloud_Downloader(url):
megpróbál:
# útvonal, ahol az összes hanganyag mentésre kerül
sc_path =os.getcwd()
# objektum létrehozása soundcloud segítségével
kliens =soundcloud.Client()
# track =client.get(url) egy objektum
# de mivel csak streamelhető hangot akarunk
# URL a letöltéshez, tehát "stream_url"
hang =kliens.get(url, megold =hamis)
stream_url =audio.stream_url
# kérést kap a tartalom beszerzésére
válasz =kérések.get(folyam_url, folyam =igaz)
# nevezze el az audiofájlt
# itt a hangfájlt ugyanúgy nevezem el, mint
# a szám címe .mp3 kiterjesztéssel
fájlnév =sc_path + '/' + audio.title.replace("/", "") + ".mp3"
# open metódus a pythonban megnyitja a fájlt írásban
# módban a fájl tartalmának mentéséhez. Itt,
# a hangfájl a rendszerben lesz tárolva.
open(fájlnév, "wb") mint f:
válaszban lévő darabhoz.iter_content(chunk_size=1024):
ha darab:
f.write(chunk)
print("Letöltés befejezve:", fájlnév)
kivéve az e kivételt:
nyomtatás (str(e))
def Bandcamp_Downloader(url):
megpróbál:
# útvonal, ahol az összes hanganyag mentésre kerül
bc_path =os.getcwd()
# a függvény az album url-jét an
# argumentum, és visszaadja az ehhez tartozó objektumot
# adott album
album =Bandcamp (url)
# a következő for loops kiírja a műsorszám nevét
# és az összes sáv URL-címe
# album
az album.tracks() számhoz:
print("Track:", track.title, track.url)
# válassza ki az általam választott letöltési formátumot
# "mp3-v0" formátum, amely 320 KB-os mp3
format ="mp3-v0"
# funkció letölti a dalt/hangot ezzel
# felhasználó beírta a nevét, és letölti a hangot
# megadott formátum
az album.tracks() számhoz:
track.download(bc_path, track.title.replace("/","")+"."
+ formátum)
print("Letöltés befejezve:", bc_path)
kivéve az e kivételt:
nyomtatás (str(e))
def main():
míg igaz:
print("Válasszon opciót:")
print("1. YouTube Downloader")
print ("2. SoundCloud Downloader")
print("3. Bandcamp letöltő")
print("4. Kilépés")
choice =input("Adja meg a választását:")
ha a választás =="1":
url =input("Adja meg a YouTube URL-címét:")
YouTube_Downloader (url)
elif választás =="2":
url =input("Adja meg a Soundcloud URL-jét:")
Soundcloud_Downloader (url)
elif választás =="3":
url =input("Írja be a Bandcamp URL-t:")
Bandcamp_Downloader(url)
elif választás =="4":
print("Kilépés...")
szünet
if __name__ =="__main__":
fő()
```