1 (2019.11.02 12:10:59 отредактировано d1mas)

Тема: icecast directory (music)

По просьбам трудящихся, как грица...

20191102 - Обновлен подкаст.
Теперь подкаст подгружает дополнительные страницы с ссылками на станции, если находит. Глубина "прогрузки" настраивается параметром: --maxpages=X, где Х - максимальное количество страниц (по умолчанию 5).
Есть глюки с кодировкой в названиях станций с нелатинскими буквами.  Пока не понимаю, почему. На функциональность не влияет.

Прикреплённые файлы сообщения

icecast.zip 2.39 kb, скачивалось 366 раз, начиная с 2019.10.20

icecast_v2.zip 2.55 kb, скачивалось 346 раз, начиная с 2019.11.02

Спасибо сказали: fctsu0011

2 (2019.10.21 21:03:08 отредактировано fctsu001)

Re: icecast directory (music)

d1mas пишет:

По просьбам трудящихся

При открытии основной страницы сразу на странице подборка "Random" на одну страницу, можно добавить первой.
Остальные списки только первую страницу тянут (первые 20 элементов), там ещё куча страниц есть.

Пример:
http://dir.xiph.org/by_genre/80s?search=80s&page=4

+ открыть спойлер
<div id="content">
                    <h2>Search results</h2>
                    <table class="servers-list">
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.fresh80s.de" onclick="javascript:pageTracker._trackPageview('/stream/website');">RADIO fresh80s - Hier sind die Achtziger zuhause! (Mobile-Stream 48kb/s aac+)</a></span>
                                    <span class="listeners">[4&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Das deutsche 80er Jahre Radio | The German Eighties Channel</p>
                                <p class="stream-onair"><strong>On Air:</strong> Talking Heads - Burning Down The House</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/Rock" title="Rock radios">Rock</a></li>
                                        <li><a href="/by_genre/Oldies" title="Oldies radios">Oldies</a></li>
                                        <li><a href="/by_genre/Pop" title="Pop radios">Pop</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/Schlager" title="Schlager radios">Schlager</a></li>
                                        <li><a href="/by_genre/Decades" title="Decades radios">Decades</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/788003/listen.m3u" title="Listen to 'RADIO fresh80s - ...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/788003/listen.xspf" title="Listen to 'RADIO fresh80s - ...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="48 kbps">
                                    <a href="/by_format/AAC+" class="no-link" title="More AAC+ streams">AAC+<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://80sbythehour.playtheradio.com/" onclick="javascript:pageTracker._trackPageview('/stream/website');">80sByTheHour</a></span>
                                    <span class="listeners">[4&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">All 80s 24/7 Featuring songs from a single year each hour. Pop New Wave Rock Alternative and everything in-between. Live your 80s one year at at time with our unique 80s format.</p>
                                <p class="stream-onair"><strong>On Air:</strong> Kraftwerk - Tour De France (Remix Francois)</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/880025/listen.m3u" title="Listen to '80sByTheHour'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/880025/listen.xspf" title="Listen to '80sByTheHour'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="https://wunschradio.de" onclick="javascript:pageTracker._trackPageview('/stream/website');">wunschradio.fm 90er</a></span>
                                    <span class="listeners">[4&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Kostenlose Musikwünsche via www.wunschradio.de</p>
                                <p class="stream-onair"><strong>On Air:</strong> Scorpions - Rock You Like A Hurricane</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/Rock" title="Rock radios">Rock</a></li>
                                        <li><a href="/by_genre/Pop" title="Pop radios">Pop</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/Eighties" title="Eighties radios">Eighties</a></li>
                                        <li><a href="/by_genre/80er" title="80er radios">80er</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/983654/listen.m3u" title="Listen to 'wunschradio.fm 90er'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/983654/listen.xspf" title="Listen to 'wunschradio.fm 90er'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="48 kbps">
                                    <a href="/by_format/AAC+" class="no-link" title="More AAC+ streams">AAC+<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.qmr.fm" onclick="javascript:pageTracker._trackPageview('/stream/website');">QMR Classic Gold 80&#039;s</a></span>
                                    <span class="listeners">[4&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">QMR</p>
                                <p class="stream-onair"><strong>On Air:</strong> Lotus Eaters - The First Picture Of You</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/864963/listen.m3u" title="Listen to 'QMR Classic Gold ...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/864963/listen.xspf" title="Listen to 'QMR Classic Gold ...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="96 kbps">
                                    <a href="/by_format/AAC" class="no-link" title="More AAC streams">AAC<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.1pureradio.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">1Pure80s</a></span>
                                    <span class="listeners">[4&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">We play the greatest new wave rock and pop hits of the 1980s from the familiar to the forgotten.  Enjoy the sounds and the memories on 1 Pure 80s Radio!  Another fine service of 1 Pure Radio Network.  For more information go to http://www.1pureradio.</p>
                                <p class="stream-onair"><strong>On Air:</strong> Scritti Politti - Boom! There She Was</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/664772/listen.m3u" title="Listen to '1Pure80s'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/664772/listen.xspf" title="Listen to '1Pure80s'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="64 kbps">
                                    <a href="/by_format/AAC" class="no-link" title="More AAC streams">AAC<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://113.fm" onclick="javascript:pageTracker._trackPageview('/stream/website');">.113FM Hits 1989</a></span>
                                    <span class="listeners">[4&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Mix: Your station for the top hits of 1989 | Twitter @113fmRadio | Download our free .113FM mobile app today.</p>
                                <p class="stream-onair"><strong>On Air:</strong> Taylor Dayne - Don&#039;t Rush Me</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/91675/listen.m3u" title="Listen to '.113FM Hits 1989'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/91675/listen.xspf" title="Listen to '.113FM Hits 1989'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.globalfm.ch" onclick="javascript:pageTracker._trackPageview('/stream/website');">Global Sport NEUCHÂTEL</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Global DAB-NE@256 Kb/s - Toute la musique que l&#039;on aime</p>
                                <p class="stream-onair"><strong>On Air:</strong> FRANCE GALL - SI MAMAN SI (DEBRANCHEE A BERCY 1993)</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/Various" title="Various radios">Various</a></li>
                                        <li><a href="/by_genre/Rock" title="Rock radios">Rock</a></li>
                                        <li><a href="/by_genre/Radio" title="Radio radios">Radio</a></li>
                                        <li><a href="/by_genre/Top40" title="Top40 radios">Top40</a></li>
                                        <li><a href="/by_genre/Pop" title="Pop radios">Pop</a></li>
                                        <li><a href="/by_genre/Mixed" title="Mixed radios">Mixed</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/Adult" title="Adult radios">Adult</a></li>
                                        <li><a href="/by_genre/Sport" title="Sport radios">Sport</a></li>
                                        <li><a href="/by_genre/Disco" title="Disco radios">Disco</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/943091/listen.m3u" title="Listen to 'Global Sport NEUC...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/943091/listen.xspf" title="Listen to 'Global Sport NEUC...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="256 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="https://www.abf.digital" onclick="javascript:pageTracker._trackPageview('/stream/website');">ABF GOLD [Propulsed by Frequence 3 &amp; Powered by IKOULA]</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Alternative Bass Frequence</p>
                                <p class="stream-onair"><strong>On Air:</strong> The Pretenders - Brass in pocket</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/90s" title="90s radios">90s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/7865/listen.m3u" title="Listen to 'ABF GOLD [Propuls...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/7865/listen.xspf" title="Listen to 'ABF GOLD [Propuls...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="64 kbps">
                                    <a href="/by_format/AAC+" class="no-link" title="More AAC+ streams">AAC+<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.staticmultimedianetwork.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">Static:ClassicAltRadio</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Take a trip back to Alternative Rock radio of the 90s and 00s.</p>
                                <p class="stream-onair"><strong>On Air:</strong> Foo Fighters - The Pretender</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/Classic" title="Classic radios">Classic</a></li>
                                        <li><a href="/by_genre/Alternative" title="Alternative radios">Alternative</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/90s" title="90s radios">90s</a></li>
                                        <li><a href="/by_genre/00s" title="00s radios">00s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/664625/listen.m3u" title="Listen to 'Static:ClassicAlt...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/664625/listen.xspf" title="Listen to 'Static:ClassicAlt...'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.staticmultimedianetwork.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">Static:Punk</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Oi!  It s the Static punk channel!</p>
                                <p class="stream-onair"><strong>On Air:</strong> Foo Fighters - The Pretender</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/Rock" title="Rock radios">Rock</a></li>
                                        <li><a href="/by_genre/Punk" title="Punk radios">Punk</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/70s" title="70s radios">70s</a></li>
                                        <li><a href="/by_genre/Rickman" title="Rickman radios">Rickman</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/910571/listen.m3u" title="Listen to 'Static:Punk'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/910571/listen.xspf" title="Listen to 'Static:Punk'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.statcmultimedianetwork.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">Static:TheBestOf1988</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Our picks for the Best and most Noteworthy songs of 1988.</p>
                                <p class="stream-onair"><strong>On Air:</strong> Foo Fighters - The Pretender</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/Hits" title="Hits radios">Hits</a></li>
                                        <li><a href="/by_genre/Best" title="Best radios">Best</a></li>
                                        <li><a href="/by_genre/Rickman" title="Rickman radios">Rickman</a></li>
                                        <li><a href="/by_genre/1988" title="1988 radios">1988</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/664350/listen.m3u" title="Listen to 'Static:TheBestOf1988'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/664350/listen.xspf" title="Listen to 'Static:TheBestOf1988'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="https://radio.streemlion.com:1220/" onclick="javascript:pageTracker._trackPageview('/stream/website');">Best Hits Radio 80&#039;s</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Playing 80&#039;sAll DAY EVERYDAY !!</p>
                                <p class="stream-onair"><strong>On Air:</strong> Foreigner - I Want To Know What Love Is</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/1056277/listen.m3u" title="Listen to 'Best Hits Radio 80&#039;s'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/1056277/listen.xspf" title="Listen to 'Best Hits Radio 80&#039;s'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="192 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://113.fm" onclick="javascript:pageTracker._trackPageview('/stream/website');">.113FM Hits 1982</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Mix: Your station for the top hits of 1982 | Twitter @113fmRadio | Download our free .113FM mobile app today.</p>
                                <p class="stream-onair"><strong>On Air:</strong> Olivia Newton-John - Make A Move On Me</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/3870/listen.m3u" title="Listen to '.113FM Hits 1982'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/3870/listen.xspf" title="Listen to '.113FM Hits 1982'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.offshoremusicradio.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">Offshore Music Radio</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-onair"><strong>On Air:</strong> JETHRO TULL - Living In The Past</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/60s" title="60s radios">60s</a></li>
                                        <li><a href="/by_genre/Oldies" title="Oldies radios">Oldies</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/70s" title="70s radios">70s</a></li>
                                        <li><a href="/by_genre/Decades" title="Decades radios">Decades</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/566516/listen.m3u" title="Listen to 'Offshore Music Radio'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/566516/listen.xspf" title="Listen to 'Offshore Music Radio'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="https://www.raddios.com/3567-sentir-radio" onclick="javascript:pageTracker._trackPageview('/stream/website');">SENTIR RADIO</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Best decades pop &amp; classic rock ((SOUNDS BEYOND COOL))</p>
                                <p class="stream-onair"><strong>On Air:</strong> Tony Orlando &amp; Dawn - Tie A Yellow Ribbon Round The Ole Oak Tree</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/Rock" title="Rock radios">Rock</a></li>
                                        <li><a href="/by_genre/Top" title="Top radios">Top</a></li>
                                        <li><a href="/by_genre/Oldies" title="Oldies radios">Oldies</a></li>
                                        <li><a href="/by_genre/Pop" title="Pop radios">Pop</a></li>
                                        <li><a href="/by_genre/40" title="40 radios">40</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/Easy" title="Easy radios">Easy</a></li>
                                        <li><a href="/by_genre/Listening" title="Listening radios">Listening</a></li>
                                        <li><a href="/by_genre/90s" title="90s radios">90s</a></li>
                                        <li><a href="/by_genre/70s" title="70s radios">70s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/856050/listen.m3u" title="Listen to 'SENTIR RADIO'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/856050/listen.xspf" title="Listen to 'SENTIR RADIO'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="32 kbps">
                                    <a href="/by_format/AAC+" class="no-link" title="More AAC+ streams">AAC+<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://80s-new-wave.playtheradio.com/" onclick="javascript:pageTracker._trackPageview('/stream/website');">80sNewWave</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Mit den besten New Wave der 80er Jahre in Großbritannien. Avec le meilleur New Wave des années 80 au Royaume-Uni. Con il miglior New Wave degli anni 80 nel Regno Unito. Com o melhor New Wave da década de 80 no Reino Unido. Playing the best of 80 s Ne</p>
                                <p class="stream-onair"><strong>On Air:</strong> Heaven 17 - Come Live with Me</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/970672/listen.m3u" title="Listen to '80sNewWave'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/970672/listen.xspf" title="Listen to '80sNewWave'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://tv80s.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">TV80s.com</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Memorable 80 s music hits. Selection of golden 80 s songs. The hits of both famous and forgotten artists of 1980-1990 decade.  Official music videos on www.tv80s.com</p>
                                <p class="stream-onair"><strong>On Air:</strong> Eros Ramazzotti - Ti Sposero</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/1009785/listen.m3u" title="Listen to 'TV80s.com'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/1009785/listen.xspf" title="Listen to 'TV80s.com'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://lostinthe80s.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">lostinthe80sradio</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Old School and R&amp;B from 80s</p>
                                <p class="stream-onair"><strong>On Air:</strong> Pebbles - Mercedes Boy</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/665295/listen.m3u" title="Listen to 'lostinthe80sradio'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/665295/listen.xspf" title="Listen to 'lostinthe80sradio'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row0">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="http://www.BossBossRadio.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">Boss Boss Radio</a></span>
                                    <span class="listeners">[3&nbsp;listeners]</span>
                                </p>
                                <p class="stream-onair"><strong>On Air:</strong> Bryan Adams - Somebody</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/60s" title="60s radios">60s</a></li>
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                        <li><a href="/by_genre/70s" title="70s radios">70s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/1087311/listen.m3u" title="Listen to 'Boss Boss Radio'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/1087311/listen.xspf" title="Listen to 'Boss Boss Radio'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="72 kbps">
                                    <a href="/by_format/AAC+" class="no-link" title="More AAC+ streams">AAC+<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                        <tr class="row1">
                            <td class="description">
                                <p class="stream-name">
                                    <span class="name"><a href="https://www.declic80.com" onclick="javascript:pageTracker._trackPageview('/stream/website');">DECLIC80</a></span>
                                    <span class="listeners">[2&nbsp;listeners]</span>
                                </p>
                                <p class="stream-description">Vous aimez les musiques des années 80 ?  DECLIC80 est une webradio faite pour vous.  100% Radio 100% Années 80.  Découvrez vite DECLIC80 !!!!!</p>
                                <p class="stream-onair"><strong>On Air:</strong> ERIC SERRA - My Lady Blue</p>
                                <div class="stream-tags"><strong>Tags:</strong>
                                    <ul class="inline-tags">
                                        <li><a href="/by_genre/80s" title="80s radios">80s</a></li>
                                    </ul>
                                </div>
                            </td>
                            <td class="tune-in">
                                <p class="format">Tune in:</p>
                                <p>[ <a href="/listen/1003947/listen.m3u" title="Listen to 'DECLIC80'" onclick="javascript:pageTracker._trackPageview('/stream/listen/m3u');">M3U</a> | <a href="/listen/1003947/listen.xspf" title="Listen to 'DECLIC80'" onclick="javascript:pageTracker._trackPageview('/stream/listen/xspf');">XSPF</a> ]</p>





                                <p class="format" title="128 kbps">
                                    <a href="/by_format/MP3" class="no-link" title="More MP3 streams">MP3<span class="stream"> stream</span></a>
                                                                    </p>
                            </td>
                        </tr>
                    </table>
                                        <ul class="pager">
                        <li><a href="?search=80s&amp;page=3">«</a></li>
                                                <li><a href="?search=80s&amp;page=0">1</a></li>
                                                <li><a href="?search=80s&amp;page=1">2</a></li>
                                                <li><a href="?search=80s&amp;page=2">3</a></li>
                                                <li><a href="?search=80s&amp;page=3">4</a></li>
                                                <li><a class="active" href="?search=80s&amp;page=4">5</a></li>

                                        </ul>
                </div>

http://dir.xiph.org/by_genre/80s?search=80s&page=5

                <div id="content">
                    <h2>Search results</h2>
                    <p class="warning">Sorry, no result for your search of '80s'.</p>
                </div>

PS в общем с одной загрузки страницы не получится, надо загружать несколько раз в цикле в процедуре создания каналов, перебирать страницы, заканчивать при нахождении "Sorry, no result for your search" ну и фильтр в процедуру унести.

BRAVIA KDL-40EX700, webos@LG-42LF650V, WDTVLive, Enigma@DM800, Enigma@GI-S8120, Android@LT-43T600F, Philps 46pdl8908s

3

Re: icecast directory (music)

Точно. Не обратил внимания на глубину кроличьей норы в жанрах. Там есть paginator внизу:

<ul class="pager">
                        <li><a href="?search=80s&page=3">«</a></li>
                                                <li><a href="?search=80s&page=0">1</a></li>
                                                <li><a href="?search=80s&page=1">2</a></li>
                                                <li><a href="?search=80s&page=2">3</a></li>
                                                <li><a href="?search=80s&page=3">4</a></li>
                                                <li><a class="active" href="?search=80s&page=4">5</a></li>

                                        </ul>

Оттуда и можно тянуть остальные станции, что б не тупо перебором. Будет время - займусь, ну или сами дорабатывайте :)

4

Re: icecast directory (music)

d1mas пишет:

Оттуда и можно тянуть остальные станции, что б не тупо перебором.

Лучше тупо перебором, поскольку в пейджинаторе количество показываемых страниц может быть ограничено, при нажатии на "next" набор может просто сдвигаться, а так - с гарантией. Видел и думал уже об этом. Ну как бы до конца не разобрался ещё в скрипте, но вроде место, где цикл строить, определил правильно.

пока скриптом некогда заниматься, подкинули геморрой на работе личного характера, пару дней точно не до скриптов.

BRAVIA KDL-40EX700, webos@LG-42LF650V, WDTVLive, Enigma@DM800, Enigma@GI-S8120, Android@LT-43T600F, Philps 46pdl8908s

5

Re: icecast directory (music)

Можно сильно не заморачиваться с рекурсией и размещать ссылку на след страницу при заходе в папку стиля. В пагинаторе есть для этого вся необходимая информация. Иначе придется контролировать глубину прогрузки следующих страниц.

В шаблонах, прилагаемых в редактору скриптов есть соответствующий для видео, но допилить его под аудио труда не составит. Хотя, я бы ограничился "Prev", "Next".

6

Re: icecast directory (music)

d1mas пишет:

Иначе придется контролировать глубину прогрузки следующих страниц.

Вот это не понял. Что контролировать?

BRAVIA KDL-40EX700, webos@LG-42LF650V, WDTVLive, Enigma@DM800, Enigma@GI-S8120, Android@LT-43T600F, Philps 46pdl8908s

7

Re: icecast directory (music)

Ну можно строить список станций внутри папки стиля двумя путями:

1. При каждом построении списка станций внутри стиля искать разметку пагинатора, сравнивать номер текущей страницы со списком и принимать решение о формировании ссылки на следующую страницу списка.

2. При заходе в папку стиля искать разметку пагинатора, анализировать ее и сразу пытаться подгрузить следующие страницы для построения списка станций. Вот тут и может ждать сюрприз, если список станций будет очень длинным. Для этого и используется ограничение на предельное количество подгружаемых страниц. Ну например: максимум подгружать по 5 страниц. Потом по ссылке "Далее" еще 5.

3. Ну и совсем трешевый вариант прогружать весь подкаст сразу. При первом обращении или обновлении. Это и долго и может привести к падению HMS или отвалу плеера клиента.

Я предпочитаю первый вариант.

8

Re: icecast directory (music)

Я как раз 3й вариант обдумывал. При первом варианте сортировка в hms будет работать только в пределах страницы.

BRAVIA KDL-40EX700, webos@LG-42LF650V, WDTVLive, Enigma@DM800, Enigma@GI-S8120, Android@LT-43T600F, Philps 46pdl8908s

9

Re: icecast directory (music)

Обновил подкаст.