Почетна arrow Стефан Петрушевски arrow Интернет arrow Практичен Perl + RSS
 
 
Uid=0
Софтвер, Интернет, Програмирање, Сигурност и заштита
RSS Канал  
Е-пошта  
Биографија  
 
 
Стефан Петрушевски
 
Практичен Perl + RSS Испечати Е-пошта
Автор: Стефан Петрушевски   
Објавено на: 24.04.2008
Во овој пост ќе се позанимаваме со RSS. Доколку барем малку време поминувате онлајн сигурно сте се сретнале со RSS и знаете за што се користи, но сепак за сите оние кои не биле доволно љубопитни да дознаат што всушност е тоа и за што користи следи мало објаснување.

Денеска се користат главно три верзии на RSS, а истото е скратеница од:
- Really Simple Syndication во RSS 2.0
- RDF Site Summary во RSS 0.90 и 1.0
- Rich Site Summary во RSS 0.91

За пишување на овие формати најчесто се користи XML (Extensible Markup Language).  Практичното значење на RSS е тоа што на лесен начин се објавуваат нови содржини од вашиот сајт. За посетителите ова значи дека со превземање на информациите од RSS каналот од некој вебсајт ќе бидат известувани за секое ново ажурирање на истиот. За истово се користат разни клиенти независно дали тоа се веб или десктоп базирани.

Сепак целта на постов не ми е детално да објаснам што е RSS, па така ова нека остане како вовед. За повеќе информации разгледајте ги следниве линкови:
http://en.wikipedia.org/wiki/RSS_(file_format)
http://www.xml.com/pub/a/2002/12/18/dive-into-xml.html
http://www.webreference.com/authoring/languages/xml/rss/intro/

Преку постов сакам да ви претставам едноставен метод на користење на XML::RSS перл модулот за читање на некој RSS канал и понатамошно користење на неговите содржини.

За ова нормално ќе ви треба да имате инсталирано Perl на вашиот компјутер. Доколку користите Linux би требало веќе да го имате инсталирано, а доколку работите на Windows ќе мора истото да го сторите со едноставно преземање и инсталирање од официјалната страна.

Понатаму треба да го инсталирате и XML::RSS модулот бидејќи не доаѓа како стандарден модул со инсталацијата. Тоа го правите со користење на CPAN shell-от, односно пишување на следнава команда во вашиот терминал:

perl -MCPAN -eshell install XML::RSS

Вториот начин би бил да го симнете изворниот код и "рачно" да го инсталирате.
Изворниот код како и документацијата можете да ги најдете овде.

-------сек------
#!/usr/bin/perl
#
use XML::RSS;
use LWP::Simple;

@channels = qw (http://milw0rm.com/rss.php http://www.slashdot.org/index.rss); #lista na rss kanali

$rss = new XML::RSS;
foreach (@channels){
 $raw = get($_); # koristenje LWP::simple get() funkcijata za zemanje na source od daden link
 $rss->parse($raw); #razlchlenuvanje po koe mozhe lesno da se koristi
 print "RSS Channel:".$rss->channel('title')."\n";  #pechatenje na naslovot na kanalot
 foreach (@{$rss->{'items'}}){     #za sekoja tema
        $title = $_->{'title'};  #zema naslov
        $url = $_->{'link'};   #zema link
        print "Title: $title ### URL: $url \n";  
 }
}
------сек------
rssget.pl

Кодот би требало да биде доволно јасен со коментарите, но сепак накратко оваа скрипта чита RSS содржини од дадена листа на RSS канали и ги печати насловите и линковите. Откако ќе се разчлени резултатот, понатамошната манипулација е едноставна и зависна од вашата потреба и имагинација... :)

Еве една мала модификација каде ќе направиме CGI скрипта која при повикување ги печати резултатите во HTML страна што веројатно често сте го виделе наоколу.

-----сек-----
#!/usr/bin/perl
#
use XML::RSS;
use LWP::Simple;

@channels = qw( http://it.com.mk/index.php?option=com_rd_rss&id=20 http://milw0rm.com/rss.php http://www.slashdot.org/index.rss); #lista na rss kanali

$rss = new XML::RSS;

print "Content-Type: text/html\n\n";
print "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"></head><body>";
print "<table width=250 border=1 cellspacing=0 cellpadding=3>";

foreach (@channels){
 $raw = get($_); # koristenje LWP::simple get() funkcijata za zemanje na source od daden link
 $rss->parse($raw); #razlchlenuvanje po koe mozhe lesno da se koristi
 print "<tr><td align=center>".$rss->channel('title')."</td></tr>";
 print "<tr><td>";
 foreach (@{$rss->{'items'}}){     #za sekoja tema
        $title = $_->{'title'};  #zema naslov
        $url = $_->{'link'};   #zema link
        print "- <a href=\"$url\">$title</a><p\>";
 }
}
print "</table></body></html>";
-----сек-----
rssget.cgi


Ова може да ви даде идеја за ваква скрипта да ја ставите директно на вашиот вебсајт со што во секој момент ќе ги имате линковите до најновите содржини од дадениот RSS канал. Секако може да ги искористите и RSS каналите на IT.com.mk за да ги имате најновите содржини од IT.com.mk и на Вашиот вебсајт. Нашите RSS канали можете да ги најдете тука.

Чисто како мала инспирација:
Ова можете понатаму да го развиете поврзувајќи го со датабаза и да направите колекција или база на линкови со одредена содржина или пак и цели содржини, па понатаму да развиете веб апликација која ќе ги чита содржините од датабазата и ќе добиете интересен, релативно корисен веб.

Клучни зборови:  Стефан Петрушевски   RSS   РСС   Perl   Перл   Интернет   Новости

 
Сподели:
Кајмакот
Digg
Technorati
Stumble
Reddit
YahooMyWeb
Delicious
Ma.gnolia
Facebook
Spurl

Првиот сајт

Првиот веб сајт е создаден со HTML код на 6 Август, 1991 од страна на Тим Бернерс-Ли. На сајтот биле објавени информации за тоа што е WWW и како се користи. Сајтот изгледал нешто слично на ова.
Корисничко име

Лозинка



RSS канали на it.com.mk

Прашалник

Од каде се информирате?

(117 глас/а)

  • 22.2%
  • 19.7%
  • 35.9%
  • 13.7%
  • 8.5%

Низ it.com.mk Блог Сервиси Маркетинг
Вести
Статии
Форум
Рецензии
Совети & трикови
Преземања
Настани
Барометар
Едуцентар
Препорачуваме
Сите блогови
е-Бизнис 2.0
Од различен аспект
Uid=0
Хардверманија
Компјутерска сигурност
Apple
Линукс блог
Веб-Соц Свет
Членство
Е-билтен
RSS канали
PDA верзија

Профили
Facebook профилTwitter профилIT.com.mk @ Flickr
IT.com.mk @ YouTubeLinkedIn профилFriendFeed профил
Каква музика слушаат ИТ луѓето?Препорачуваме линкови преку Delicious Главен RSS канал
IWM NETWORK - iwmnetwork.com
ИТ Консалтинг, Интерактивен маркетинг, Истражувања и анализи, Веб дизајн...

IT.com.mk маркетинг