# conn = SubpyConn(u, p, "https://music.0x01fe.net") # artistIndexes = conn.getIndexes() # for artistIndex in artistIndexes.indexes: # print(artistIndex.name, artistIndex.artists) helios_id = 'c69cdc593487ed813f1e11ecb270b228' yakui_id = "7f6ca9951af294420382442061a2d6ee" # r = conn.getMusicDirectory(helios_id) # with open("getHelios.xml", 'wb') as file: # file.write(r.content) # yakui_albums = conn.getArtistAlbums(yakui_id) # for album in yakui_albums: # print(album.name) # helios_songs = conn.getAlbumSongs(helios_id) # for song in helios_songs: # print(song.trackNumber, song.title) # artists = conn.getArtists() # for artist in artists: # print(artist.name) echidna_id = "937004317800a879f0cddd471fb82387" # print(conn.stream(echidna_id).content) # def getArtists() -> list[Artist]: # tree = xml.etree.ElementTree.parse("artist_response.xml") # root = tree.getroot() # artists: list[Artist] = [] # if root.get('status') != 'ok': # return [] # for item in root.iter(): # print(item.tag, dict(item.items())) # if item.tag == '{http://subsonic.org/restapi}artist': # a = Artist() # a.fromDict(dict(item.items())) # artists.append(a) # return artists # artists = getArtists() # for artist in artists: # print(artist.name) # conn = libsonic.Connection('https://music.0x01fe.net', 'pseudo', p, port=443) # song = conn.getRandomSongs(1)['randomSongs']['song'][0] # song_id = song['id'] # rate = song['samplingRate'] # print(song_id) # stream = conn.stream(song_id) # while not stream.fp: # pass # pya = pyaudio.PyAudio() # pya_stream = pya.open(format=) # wave_obj = simpleaudio.WaveObject(stream.fp) # play_obj = wave_obj.play() # play_obj.wait_done()