hier ist eine kleine praktische Spielerei von mir:
Code: Alles auswählen
#!/usr/bin/env python
import subprocess,time,threading,os,fcntl
from Tkinter import *
url = 'http://scfire-dtc-aa01.stream.aol.com:80/stream/1048'
cmd = "mplayer , %s" % url
runa = True
print(cmd)
def pastart():
global p,a
listbox.insert(0,"Radio wird gestarter")
p = subprocess.Popen([cmd], shell=True, stdout=subprocess.PIPE)
fcntl.fcntl(p.stdout, fcntl.F_SETFL, os.O_NONBLOCK)
time.sleep(1)
while runa:
time.sleep(0.5)
try:
a = p.stdout.readline()
if a[0:3] == 'ICY':
x,y,z = a.partition(';')
listbox.insert(0,x[22:])
main.update
except:
main.update
def pystop():
runa = False
print(p)
p.stdout.close()
p.kill()
def test1():
global T1
T1 = threading.Thread(target = pastart)
T1.start()
main = Tk()
main.title('Radio Paradise')
main.minsize(500,400)
main.maxsize(500,400)
btnstart = Button(main,text='Start',command = test1)
btnstart.pack()
btnstop = Button(main,text='Stop',command = pystop)
btnstop.pack()
listbox = Listbox(main,width=60)
listbox.pack()
main.mainloop()
ich bekomms auch nicht auf NT übertragen :
fcntl muss gegen msvcrt ersetzt werden, bekomm ich einfach nicht hin.
Würde mich über Kritik und Hilfe sehr freuen.
Bis bald
Drache