• 27

Spb Insight 專用 Template 集中發佈帖

http://radio.xmlstoragesystem.com/rcsPublic/rssHotlist
有辦法用出電視節目表嘛

板上是有高手寫出PPC用的軟體拉 不過要是能跟RSS整合再起就更方便了

電影的已經有了且很好用

找了很久都沒有電視節目表

板上有利用開演電影資訊來做RSS

不知道開眼的電視資訊能不能這樣用
kbk007 wrote:
全球華文行銷知識庫,...(恕刪)


感謝!!
我剛加入了~已經可以正常看了~!
謝謝您~!!
來我家吧! 艾恩莎拉 I'm Sarah http://imsarahsong.blogspot.com/
大家好,小弟E文较差,又想学一下写Template.请问有人可以写一份Spb Insight的写Template的中文教程吗?最好可以通过实际网页讲解的.经过前一段时间的摸索,简单的XML形式网址的基本会写了,但有分页的不行,还有是网址不是XML形式,基本不会写.希望有人赐教,祝大家五一快乐!
請問各位大大,有誰可以修改UDN的,我怎麼改都不行抓下來
之前有電影時刻表!現在新增電視時刻表囉

資訊來源:
http://www.atmovies.com.tw/home/tv_homepage.html
開眼電影電視娛樂網

是照著該網站的分類全抓

注意:抓的日期很可能會抓到後一日的節目表
不會改local time的時間,不過先抓下後一日節目應該也還好
每次抓時會依日期的不同抓新的節目表,請各位試用!


[更新一次抓今後2天的節目表]
附加壓縮檔: 200705/mobile01-a6e96ef79e3c30ee35a0ba6be33d9139.zip


[增補解說]
前面有人提及說要如何抓不是RSS的網站?那就順便分享一下這個網站的抓法
建議有興趣研究的人可以開啟這份xml,再對照來看

1先研究看到的版面
前面我有一份簡單的說明有提到要先有channel再來是article
我把重點放在如何解channel上,後段的article的部份請參考前文的說明,以
http://www.atmovies.com.tw/home/tv_homepage.html為例
本來我想要這個頁面的每個連結都做成一個channel來抓,但發現
這樣子會暫太多的channel,於是得想辦法全部擠成一個channel
http://tv.atmovies.com.tw/tv/attv.asp?action=channeltime
這頁裏面的上方有大分類的連結,那就從這兒開始下手吧!

下面第2段是一開始我最早做好的版是把每個分類做成一個channel
先著手確認文章都能抓到

2抓channel及article
這裏是綜合類的連結一例,請參考原網站的連結
一開始是這樣寫
...
<channel>
<name>電視-節目表-綜合</name>
<url>http://tv.atmovies.com.tw/tv/attv.asp?action=todaytime&tvfile=20070503A</url>
</channel>
...
<parse_channel>
<![CDATA[
var href = channel.url
var article = new Article();
article.id = href;
article.url = href;
article.header = "測試";
channel.articles.push( article );
]]>
</parse_channel>
<parse_article>
<![CDATA[
var d = new Document(article.url, "big5");
article.body = "";
var nodestory = d.getElementsByAttr("table", "width", "96%")[0].firstChild;
for (var node = nodestory; node; node = node.nextSibling)
{
article.body += node.outerHTML;
}
]]>
</parse_article>

3改channel
但這樣還不能達到我的理想,最好是能變成一個channel
針對我們建的每一個類別,查該網站都有給一個英文代碼,此外每天日期不同時可以取得不同的節目表
於是在channel自己定義了2段tag
<channel>
<name>電視-節目表</name>
<url>http://tv.atmovies.com.tw/tv/attv.asp?action=todaytime&tvfile=</url>
<tvtype>A,T,G,N,D,M,L,C,E,J,S,V,F,R</tvtype>
<tvtypename>綜合,戲劇,綜藝,新聞,數位,西片,國片,卡通,新知,日本,體育,音樂,財經,宗教</tvtypename>
</channel>
請注意上面的url的最後面的tvfile=20070503A等號後面已被我截去
tvtype和tvtypename等下可用split把他切開,再跑迴圈解掉

前面有提到日期,所以我先要抓到今天的日期並轉成字串格式,遇到1-9要補"0"
today = new Date();
var Y = String(today.getFullYear());
...略
var strDay = Y + M + D

上面的strDay的日期已改成像上面的20070503格式
如果想要測試自己寫的對不對,可用alert(strDay)把資訊顯示出來,方便除錯

var t = channel.tvtype.split(",");
var n = channel.tvtypename.split(",");
這2段碼就是準備做迴圈

for(i=0;i<t.length;i++)
{
var href = "http://tv.atmovies.com.tw/tv/attv.asp?action=todaytime&tvfile=" + strDay + t〔i〕;
var article = new Article();
article.id = href + strDay;
article.url = href;
article.header = strDay + "-" + n〔i〕+ "類-" + channel.name;
channel.articles.push( article );
}
注意:
var href的參數就是把做好的字串組起來
article.id是要確保文章不會重複抓取,這邊的寫法如果遇到日期不一樣就會再抓新的文章
我是合併href和日期,很多時候article.id就直接把href傳入
這邊我這樣的寫法其實也可改為article.id = href,因為我們的href的值已隨日期不同會有變化

以上就是我的解說,至於要如何抓分頁,又是另一個課題了!
不知道是不是有人能利用SPB 1.5.0版
變成桌面的股市即時行情表

例如
世界重要股市指數
http://tw.news.yahoo.com/biz/iframe_ticker_stock.html

或是
台股指數期貨
http://www.kgifutures.com.tw/price.htm
歡迎光臨我的網站  行動最愛網 http://i-favorites.net
樓上想要抓即時行情,這裏恐怕不適合使用,因為insight還未釋出像spb weather可設定排程來抓
除非你自己在開盤時想到就去update,這樣好像太累了些
倒是收盤行情,應該是可行的!
  • 27
內文搜尋
X
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 27)
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?