Как воспроизводить музыку с интернета в python

Можно ли как-то воспроизводить музыку с интернета не скачивая её.

Если да, то подскажите как? Всё облазил ничего годного не нашёл, только pyglet да pygame.


Ответы (2 шт):

Автор решения: Victor VosMottor
import os
os.system('wget -O http://example.com/path/to/audio | aplay')
→ Ссылка
Автор решения: S. Nick

Онлайн радио на Python и PyQt5

Прежде чем запустить мой пример, убедитесь, что вы установили PyQt5

pip install PyQt5
pip install pyqt5-tools

Теперь пробуйте:


import sys
from PyQt5.Qt import QUrl, Qt
from PyQt5.QtMultimedia import QMediaPlayer, QMediaContent
from PyQt5.QtWidgets import QApplication, QWidget, QSlider, QPushButton, QGridLayout


class Demo(QWidget):
    def __init__(self):
        super(Demo, self).__init__()
        self.player = QMediaPlayer(self)
        
        self.volumeslider = QSlider(Qt.Horizontal)
        self.volumeslider.setFocusPolicy(Qt.NoFocus)
        self.volumeslider.valueChanged[int].connect(self.change_volume)
        self.volumeslider.setValue(100)
        self.volume = self.volumeslider.value()

        play_btn  = QPushButton('Play')   
        play_btn.clicked.connect(self.playMedia)
        pause_btn = QPushButton('Pause')  
        pause_btn.clicked.connect(self.pauseMedia)
        stop_btn  = QPushButton('Stop')   
        stop_btn.clicked.connect(self.stopMedia)
        
        layout = QGridLayout(self)
        layout.addWidget(play_btn, 0, 0)
        layout.addWidget(pause_btn, 0, 1)
        layout.addWidget(stop_btn, 0, 2)
        layout.addWidget(self.volumeslider, 1, 0, 1, 3)
        
        self.player.setMedia(QMediaContent(QUrl(
            'http://europaplus.hostingradio.ru:8014/ep-top256.mp3'
        )))        
        
        self.player.setVolume(self.volume) 
        self.player.play()        
        
    def change_volume(self, value):
        self.player.setVolume(value)
        
    def playMedia(self):
        self.player.play()  

    def pauseMedia(self):
        self.player.pause()        
        
    def stopMedia(self):
        self.player.stop()  


if __name__ == '__main__':
    app = QApplication(sys.argv)
    demo = Demo()
    demo.show()
    sys.exit(app.exec_())

введите сюда описание изображения

→ Ссылка