Internet radio browser GUI for music/video streams from various directory services.

⌈⌋ branch:  streamtuner2


Diff

Differences From Artifact [43a955e299]:

To Artifact [73c3b74f30]:


18
19
20
21
22
23
24
25

26
27

28
29
30
31
32
33
34
35
36
18
19
20
21
22
23
24

25
26

27
28

29
30
31
32
33
34
35







-
+

-
+

-






# 
# Live365 lists around 5000 radio stations. Some are paid
# entries and require a logon. This plugins tries to filter
# thoise out.


# streamtuner2 modules
from config import conf
from config import *
from uikit import uikit
import ahttp as http
import ahttp
from channels import *
from config import *
import action

# python modules
import re
import xml.dom.minidom
from xml.sax.saxutils import unescape as entity_decode, escape as xmlentities
import gtk
86
87
88
89
90
91
92
93

94
95
96
97
98
99
100
85
86
87
88
89
90
91

92
93
94
95
96
97
98
99







-
+






    # extract stream infos
    def update_streams(self, cat):

        # Retrieve genere index pages    
        html = ""
        for i in [1, 17, 33, 49]:
            url = "http://www.live365.com/cgi-bin/directory.cgi?first=%i&site=web&mode=3&genre=%s&charset=UTF-8&target=content" % (i, cat.lower())
            html += http.get(url, feedback=self.parent.status)
            html += ahttp.get(url, feedback=self.parent.status)
        
        # Extract from JavaScript       
        rx = re.compile(r"""
                stn.set\(   " (\w+) ", \s+  " ((?:[^"\\]+|\\.)*) "\);  \s+
            """, re.X|re.I|re.S|re.M)

        # Group entries before adding them