Check-in [b3defb1227]
Overview
Comment: | Minor fix for extraction regexp (http: prefix to station urls). |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
b3defb12277efc7dae6aac6bda2cd48c |
User & Date: | mario on 2017-02-14 17:52:47 |
Other Links: | manifest | tags |
Context
2017-02-15
| ||
21:38 | document recent channel/feature plugins check-in: 7eb6bd6410 user: mario tags: trunk | |
2017-02-14
| ||
17:52 | Minor fix for extraction regexp (http: prefix to station urls). check-in: b3defb1227 user: mario tags: trunk | |
16:33 | Shorten format comparison in postprocess_filter, remove original *gtkrc* stock item binding. check-in: 9933677f41 user: mario tags: trunk | |
Changes
Modified contrib/radionet.py from [a8d2a6968a] to [29c966c64c].
1 2 3 4 5 | # encoding: UTF-8 # api: streamtuner2 # title: radio.net # description: Europe's biggest radio platform # url: http://radio.net/ | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 | # encoding: UTF-8 # api: streamtuner2 # title: radio.net # description: Europe's biggest radio platform # url: http://radio.net/ # version: 0.6 # type: channel # category: radio # png: # iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAt0lEQVR42mNgYGD4r+Ar/F/BDwkD+SBxojBMs1mLPBArgGlFqEEENYMNQNLsukIDYkirAvGu # ABsA1OC6XOP/5f8nwIaYAg0k2gBFsAsgTgcZkvnfDugFEeK9AFKsCPMG0CU6eZJgQ4R1eP8H7LLEivWyFJANQcQCLPBAmkGG4MJohmA6C6QA5gI5OxEUDNII # MwSvASBFIA3ociCxkWQAKMDICkSQIpgh2LDnSmP80YhsCFEJiRIMADpmeUOpqgjRAAAAAElFTkSuQmCC # priority: optional |
︙ | ︙ | |||
75 76 77 78 79 80 81 | # category page, get key html = ahttp.get(self.genre_url.format(cat)) for p in range(2, 4): if html.find('"?p={}">'.format(p)) >= 0: html += ahttp.get(self.genre_url.format(cat) + "?p={}".format(p)) self.set_key(html) r = [] | | > > > > > > > > > > > > > > > > > > | | | 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 | # category page, get key html = ahttp.get(self.genre_url.format(cat)) for p in range(2, 4): if html.find('"?p={}">'.format(p)) >= 0: html += ahttp.get(self.genre_url.format(cat) + "?p={}".format(p)) self.set_key(html) r = [] """ <div class="stationinfo-content">Fresh pop music, R'n'B, the newest chart hits and the Top 40 can all be found on this Internet radio station, ANTENNE BAYERN.</div> </div><div class="stationinfo stationinfo-extended " expandable ng-cloak > <a href="http://antennefrankfurt.radio.net/" class="stationinfo-link" id=""> <svg class="icon icon-play" id=""><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-play" id=""></use></svg> <img src="http://static.radio.net/images/broadcasts/60/cf/19304/c44.png" onError="this.src=window.stationLogo;" alt="ANTENNE FRANKFURT 95.1 " id=""> <strong id=""> <svg class="icon icon-podcast"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-podcast"></use></svg> <span highlight-text="Top 40" highlight-class="highlight-tags" id="">antenne frankfurt 95.1 </span> </strong> <small highlight-text="Top 40" highlight-class="highlight-tags" id=""> Frankfurt am Main, Germany / Charts, News, Pop, Top 40, News, Weather</small> <em now-playing="19304" searched-term="Top 40" id=""></em> </a> <a class="stationinfo-info-toggle" href="" ng-click="toggle()"> <svg class="icon icon-arrow-up"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-arrow-up"></use></svg> <svg class="icon icon-arrow-down"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-arrow-down"></use></svg> </a> """ # split station blocks for row in re.split("""<div class="stationinfo""", html)[1:]: # extract text fields d = re.findall(""" <a\s+href="(?:http:)?(//([\w-]+)\.radio\.net/?)" .*? <img\s+src="([^<">]+)" .*? <strong[^>]*>(.*?)</strong> .*? <small[^>]*>\s*(.*?)\s*</small> .*? """, row, re.X|re.S) # refurbish extracted strings if d and len(d) and len(d[0]) == 5: |
︙ | ︙ |