Hinet Radio
2006-03-16 03:15
Hinet 有個線上廣播網 , http://radio.hinet.net/
有朋友想用 script 去跑 , 把 mms:// 的 url 截出來 , 餵給 player 播放
本來的作法是手動去抓網頁上的電台 => radio_id
然後存在一個檔案裡
但是覺得這樣不夠漂亮 (好吧 , 我龜毛 XD)
且要手動抓上面的 radio_id 有點累 ...
於是寫了個 perl script 去 parse html
wget -q -O /dev/stdout http://radio.hinet.net/radio/index.html | perl -ne 'print ++$i.":$1:" if(/<td class="11gray">(.+)</);print "$1\n" if(/javascript.+player.jsp\?radio_id=(\d+).+font/)'
跑出來就會看到
1:ASIA FM92.3亞太電...:295
2:Best Radio 好事93....:303
3:GOLD FM-台中城市...:226
4:HitFm 聯播網 台...:88
5:HitFm 聯播網 高...:90
6:HitFm聯播網台北...:87
7:IC之音:148
8:KISS RADIO大眾廣...:156
9:KISS RADIO網路音...:308
10:Kiss Radio南投廣...:258
11:Kiss Radio台南知...:255
12:Kiss Radio大苗栗:256
13:中廣古典網:162
14:中廣音樂網:206
15:亞洲調頻廣播...:210
16:全國廣播:202
17:台中廣播:230
18:台北之音經典...:222
呃 奇怪的 hinet radio ... 幹嘛名稱都不寫完整 , 放一堆 ... @@”
不過因朋友是用 shell script 設計的 , 裡面又餵一堆 perl 就很怪 ...
那還不如全部都用 perl 處理掉就好了 , 10行內解決 :p
anyway , pattern matching 還是用 perl 比較習慣 XD
2006/03/16 14:10 Update :
朋友寫的 script 在這裡 :
and 有人提醒說 hinet radio 有兩個 page ,
呃 , 眼睛太小沒注意到下面還有一個 “下一頁” ...
把兩個 URL 都餵給 wget 就好了 ;p
wget -q -O /dev/stdout http://radio.hinet.net/radio/index.html http://radio.hinet.net/radio/mainPageType1-2.html | perl -ne 'print ++$i.":$1:" if(/<td class="11gray">(.+)</);print "$1\n" if(/javascript.+player.jsp\?radio_id=(\d+).+font/)'
Result :
1:ASIA FM92.3亞太電...:295
2:Best Radio 好事93....:303
3:GOLD FM-台中城市...:226
4:HitFm 聯播網 台...:88
5:HitFm 聯播網 高...:90
6:HitFm聯播網台北...:87
7:IC之音:148
8:KISS RADIO大眾廣...:156
9:KISS RADIO網路音...:308
10:Kiss Radio南投廣...:258
11:Kiss Radio台南知...:255
12:Kiss Radio大苗栗:256
13:中廣古典網:162
14:中廣音樂網:206
15:亞洲調頻廣播...:210
16:全國廣播:202
17:台中廣播:230
18:台北之音經典...:222
19:台北愛樂:228
20:台灣之音-音樂:313
21:大千電台:109
22:太陽電台:289
23:奇美古典音樂...:294
24:寶島新聲廣播...:259
25:環宇廣播:282
26:真心之音廣播...:225
27:蘋果線上:248
28:飛碟電台:232
vim
.Perl 類別的文章 :
filter control charRe: CGI encrypt?
新增留言
Trackback this post | 訂閱這則留言的 RSS Feed