soup.io a web 2.0

Čo sa týka mňa, tak som konzervatívny v prijímaní nových web 2.0 služieb. Ani nie tak kvôli paranoji, ale pretože pre mňa často nemajú žiaden praktický význam. No napriek tomu samozrejme niektoré využívam.

soup.io je je lepidlom pre rôzne web 2.0 služby, o ktorom som sa dozvedel už na prvom slovenskom BarCampe, ale doteraz som ho nemal ako využiť. Taktiež poskytuje aj funkcie takzvaného “microblogu”, ale bez obmedzenia na 140 znakov (demencia). Výsledok som nazval “ramble”.

V procese vytvárania mojej polievočky som si narýchlo napísal skript, ktorý prevádza ČSFD hodnotenia na RSS feed:

csfd-hodnotenia-feed.php
<?php
echo '<?xml version="1.0" encoding="utf-8"?>';
 
// cast URL zavisla na konkretnom uzivatelovi
$USER = '';
 
//$MAX_ITEMS = 25;
$MAX_ITEMS = 100;
 
$pattern = '/<td colspan="2">.+?<img src="(.+?)".+?>.+?<a href="(.+?)">(.+?)<\/a>.+?\((.+?)\).+?<\/td>.+?<td.+?>(.+?)<\/td>.+?<td.+?>(\d+).(\d+).(\d+)<\/td>/';
 
//if (ini_get('allow_url_fopen') == '1') {
//   echo "OK"; // use fopen() or file_get_contents()
//}
 
ini_set('user_agent', 'My-Application/2.5');
$f = file_get_contents('http://www.csfd.cz/uzivatel/'.$USER.'/hodnoceni/');
$str = str_replace("\n", '', $f);
 
preg_match_all($pattern, $str, $matches, PREG_SET_ORDER);
//print_r($matches);
 
/*
 
  0 - matched block
  1 - globalne hodnotenie (img)
  2 - film - relative url
  3 - nazov filmu
  4 - rok
  5 - osobne hodnotenie
  6-8 - den, mesiac, rok hodnotenia
 
 */
 
?>
<rss version="2.0">
  <channel>
    <title>disorder - csfd.cz hodnotenia</title>
    <link>http://www.csfd.cz/</link>
    <description><![CDATA[disorder - csfd.cz hodnotenia]]></description>
    <lastBuildDate><?php echo date(DATE_RFC2822) ?></lastBuildDate>
    <generator>csfd.cz hodnotenia RSS extractor</generator>
    <ttl>360</ttl>
 
<?php $i = 0; ?>
<?php foreach ($matches as $m): ?>
<?php if ($i++ > $MAX_ITEMS) break; ?>
<item>
<guid isPermaLink="true">http://www.csfd.cz<?php echo $m[2]?></guid>
<title><?php echo trim($m[3])." ($m[4])" ?></title>
<pubDate><?php echo date(DATE_RFC2822, mktime(12, 0, 0, (int)$m[7], (int)$m[6], (int)$m[8]))?></pubDate>
  <link>http://www.csfd.cz<?php echo $m[2]?></link>
<description><![CDATA[
<a href="http://www.csfd.cz<?php echo $m[2] ?>"><img src="<?php echo $m[1] ?>" /> <?php echo trim($m[3]) ?></a> <?php echo trim($m[4]) ?>
&nbsp;<b><?php echo trim($m[5]) ?></b>
]]></description>
</item>
<?php endforeach ?>
  </channel>
</rss>

Comments

weblog/2010-02-19/soup.io_a_web_2.0.txt · Last modified: 2010/08/03 06:21 by 127.0.0.1