Check-in [19ad85d18d]
Overview
Comment: | Simplify windowsmedia regexp. Omit bitrate=32, because `filter_bitrate` makes it appear empty per default then. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
19ad85d18d910b65c533fd3d9e1d8d1d |
User & Date: | mario on 2015-05-16 16:36:04 |
Other Links: | manifest | tags |
Context
2015-05-16
| ||
16:36 | Use new autosave flag for DND. check-in: 275d481bea user: mario tags: trunk | |
16:36 | Simplify windowsmedia regexp. Omit bitrate=32, because `filter_bitrate` makes it appear empty per default then. check-in: 19ad85d18d user: mario tags: trunk | |
01:47 | Use shorter domain names for homepage favicons again. check-in: 9931f4e0e5 user: mario tags: trunk | |
Changes
Modified contrib/windowsmedia.py from [001f709eb0] to [5a5f4b7ddc].
1 2 3 4 5 | # encoding: UTF-8 # api: streamtuner2 # title: WindowsMedia # description: ASX-Playlist radio stations, common genres # url: http://windowsmedia.com/ | | | | < < < | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | # encoding: UTF-8 # api: streamtuner2 # title: WindowsMedia # description: ASX-Playlist radio stations, common genres # url: http://windowsmedia.com/ # version: 0.4 # depends: streamtuner2 >= 2.1.8-dev # type: channel # category: radio # config: # { name: windowsmedia_culture, type: select, value: en-gb, select: "en-gb|de-de|da-dk|cs-cz|es-es|fr-fr|it-it|nl-nl|pl-pl|tr-tr|pt-pt|pt-br|en-us", description: "Country/language preference (for localized ads:?)" } # png: # iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAk1BMVEWwMjIAAQACAAoSAwQ2CQcAH5VqERZsESgNK489KFwA # MrMAN6UQQwAXNpEAPakAQJ8AQ44RO7S2JQ8ASr6vLwqPOgoZYgCCSgvPPgVCbAF9XwzMTRrqUAHNY0VemADjbTiShjOYhiJR # oApJqgRerwlUtgBjwgDAsQDdqQB02AnowgP+soDfywDs2RL25Qr4727/8rdsT1F2AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgF # HUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQffBQcANDDneHDIAAAAlUlEQVQY02VPWxKCMAzcKmIF5GGrVkVAKA+x # Ve9/OhUK0xmTj2Q3yU4WAPnmL6Y69rDQwJB/bDOLpYNDEFgc352betYh4EIcK5lVgVHnIk/3kCdp5g7PHykv742sp43LFS4y # lMMNgbvebJl3U6ptjSxFFDPop+7NF5RFcVK8X6qfPIS+n0BrNf9FQ98retXZDlfoxuYDwYsJfXHQg0AAAAAASUVORK5CYII= # png-orig: https://openclipart.org/detail/176727/windows-bug # priority: extra # status: unsupported # # Well, this one is Windows-specific, so naturally uses # horrible formats "WAX" (ASX) for playlists. Still can # be parsed by action module, but possibly falling back # onto raw extraction etc. VLC does quadruple redirects. # # Only fetches the first page for each category anyway. # Most entries are lower bitrates, 32 to 64 kbit/s MP3. import re from config import * from channels import * import ahttp # Yay, windows playlists. class windowsmedia (ChannelPlugin): # control flags has_search = False listformat = "asx" audioformat = "audio/mpeg" titles = dict(listeners=False, bitrate=False, playing="Location") _web = "http://www.windowsmedia.com/RadioUI/Home.aspx?g={}&culture=en-gb" base = "http://www.windowsmedia.com/RadioUI/getstationsforgenre.aspx?g={}&offset=0&culture={}" _url = "http://www.windowsmedia.com/RadioTunerAPI/Service.asmx/playStation?"\ + "stationID={}&dialupDetected=false&useHighBandwidth=true&locale={}" |
︙ | ︙ | |||
69 70 71 72 73 74 75 76 77 | # Fetch entries def update_streams(self, cat, search=None): ucat = re.sub("\W+", "", cat.lower()) html = ahttp.get(self.base.format(ucat, conf.windowsmedia_culture)) r = [] | > | < | | | > | 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | # Fetch entries def update_streams(self, cat, search=None): ucat = re.sub("\W+", "", cat.lower()) html = ahttp.get(self.base.format(ucat, conf.windowsmedia_culture)) # onclick="Listen('31e11281-cf43-4d39-9164-77721604380b', 'DJ Perry Radio', 'http://www.djperryradio.com/', 'More Stations', '20', true);"> r = [] ls = re.findall(r""" onclick="Listen\('([\w\-]+)',\s*'(.+?)',\s*'(.+?)', """, html, re.X|re.S) for id, title, homepage in ls: r.append(dict( id = id, title = unhtml(title), homepage = ahttp.fix_url(homepage), url = self._url.format(id, conf.windowsmedia_culture), bitrate = 0, )) print r return r |