Rhythmbox Radio Station listesini içe / dışa aktarmanın bir yolu var mı?
Değilse, bana Rhythmbox gibi benzer özelliklere sahip iyi bir müzik çalar önerebilir misiniz?
Teşekkür ederim!
Rhythmbox Radio Station listesini içe / dışa aktarmanın bir yolu var mı?
Değilse, bana Rhythmbox gibi benzer özelliklere sahip iyi bir müzik çalar önerebilir misiniz?
Teşekkür ederim!
Yanıtlar:
rhythmbox tüm müzik dosyaları hakkındaki bilgileri ~ / .local / share / rhythmbox / rhythmdb.xml dosyasında depolar
Radyasyon istasyonları ile ilgili girişler "giriş tipi iradio" ile başlar.
İşte aynı şeyi yapmak için bir python betiği, yani Rhythmbox tarafından kullanılan xml veri tabanından internet radyo istasyonlarının adlarını ve konumlarını ayıklayın:
import xml.sax.handler
import xml.sax
import pprint
class RhythmboxPlaylistHandler(xml.sax.handler.ContentHandler):
def __init__(self):
self.inRTitle = False
self.inRLocation = False
self.entrytype = "undefined"
self.titlebuffer = ""
self.locationbuffer = ""
self.radiostations = {}
def startElement(self, name, attributes):
if name == "entry":
self.entrytype = attributes["type"] # we're interested in type="iradio"
elif name == "title" and self.entrytype == "iradio":
self.inRTitle = True
elif name == "location" and self.entrytype == "iradio":
self.inRLocation = True
def characters(self, data):
if self.inRTitle:
self.titlebuffer += data
elif self.inRLocation:
self.locationbuffer += data
def endElement(self, name):
if name == "title":
self.inRTitle = False
elif name == "location":
self.inRLocation = False
elif name == "entry" and self.entrytype == "iradio":
self.radiostations[self.titlebuffer] = self.locationbuffer
self.titlebuffer=""
self.locationbuffer=""
parser = xml.sax.make_parser( )
handler = RhythmboxPlaylistHandler( )
parser.setContentHandler(handler)
parser.parse("work_copy_of_rhythmdb.xml")
pprint.pprint(handler.radiostations)
rstations=handler.radiostations
rskeys=[key for key in rstations]
rskeys.sort()
ofile=open("rhytmbox_current_internet_radiostations.txt","w")
ofile.write("# {0:41} --> {1}\r\n".format('radio station name','location'))
ofile.write("#"+120*'-'+"\r\n")
for key in rskeys:
ofile.write("{0:45} --> {1}\r\n".format(key,rstations[key]))
ofile.close()
(Bu öğretici ile python içinden XML veri tabanlarıyla çalışmaya başladım: http://oreilly.com/catalog/pythonxml/chapter/ch01.html )
Xmlstarlet, temel verileri XML dosyanızdan çıkarmak için kullanabilirsiniz. Ayrıntılar için buraya bakın:
http://steffen67.blogspot.com/2011/05/how-to-export-rhythmbox-radio-stations.html
dışa aktarmak için dosyayı ~/.local/share/rhythmbox/rhythmdb.xml
içe aktarmak istiyorsanız okuyun Bir M3U dosya listesi oluşturun :
#EXTM3U
#EXTINF:-1,Quran - Eman City Quran & Islam Talk
http://206.72.199.180:9990/;stream.nsv
#EXTINF:-1,Quran - Radio Quraan
http://66.45.232.131:9994/;stream.nsv
#EXTINF:-1,Quran - Allahu Akbar Radio
http://66.45.232.1ls32:10196/;stream.nsv
#EXTINF:-1,Quran - izlam
http://66.45.232.133:9998/;stream.nsv
#EXTINF:-1,Quran - tafsir Al Sheikh Mohammad Ratib Al Nabulsi & Sheikh Muhammad Mitwalli Al Sharawi
http://206.72.199.179:9992/;stream.nsv
#EXTINF:-1,Quran - radioislamico
http://66.45.232.134:9996/;stream.nsv
ve ritim kutusuyla aç