#!/usr/bin/php5
<?php
//*********************
// PHP pilkkominen
//*********************
// Ladataan koko sivuston koodit muuttujaan
$sivunkoodi = file_get_contents("http://www.yle.fi/ohjelmaopas/index.php?&co[]=tv1&co[]=tv2&co[]=mtv&co[]=nel&co[]=sub&span=day");
// Etsitään yle1:n tv-ohjelmien osa
$alku = stripos($sivunkoodi,"<b>TV1</b>");
$loppu = stripos($sivunkoodi,"<b>TV2</b>");
$pituus = $loppu - $alku;
$yle1 = substr($sivunkoodi,$alku,$pituus);
// print $yle1;
// Etsitään TV2:n tv-ohjelmien osa
$alku = stripos($sivunkoodi,"<b>TV2</b>");
$loppu = stripos($sivunkoodi,"<b>MTV3</b>");
$pituus = $loppu - $alku;
$yle2 = substr($sivunkoodi,$alku,$pituus);
// print $yle2;
// Etsitään MTV3:n tv-ohjelmien osa
$alku = stripos($sivunkoodi,"<b>MTV3</b>");
$loppu = stripos($sivunkoodi,"<b>Nelonen</b>");
$pituus = $loppu - $alku;
$mtv3 = substr($sivunkoodi,$alku,$pituus);
// Etsitään Nelosen tv-ohjelmien osa
$alku = stripos($sivunkoodi,"<b>Nelonen</b>");
$loppu = stripos($sivunkoodi,"<b>Subtv</b>");
$pituus = $loppu - $alku;
$nelonen = substr($sivunkoodi,$alku,$pituus);
// Etsitään Subtv tv-ohjelmien osa
$alku = stripos($sivunkoodi,"<b>Subtv</b>");
$subtv = substr($sivunkoodi,$alku);
// Kirjoitetaan tekstitiedostoon yle1:n ohjelmat
//********************
// TV1
//*******************
$tiedosto = fopen("yle1.txt","w");
$rivinvaihto = stripos($yle1,"\n");
$rivi = substr($yle1,0,$rivinvaihto);
// print $rivi;
while($rivinvaihto != 0)
{
$ind = stripos($rivi,"<td valign=\"top\"><b>");
if($ind != 0)
{
fwrite($tiedosto,substr($rivi,$ind+20,5) . "|");
$ind = stripos($rivi," </td><td>");
$rivi = substr($rivi,$ind+15);
$ind2 = stripos($rivi,"mode=www\">");
if($ind2 == 0)
{
$testi = stripos($rivi,"bgcolor");
if($testi == 0)
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind - $ind2;
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
else
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind + 21 - $ind2 +3;
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
}
else
{
$rivi = substr($rivi,$ind2+10);
$ind = stripos($rivi,"</a>");
$pituus = $ind2 - $ind;
fwrite($tiedosto,substr($rivi,0,$ind) . "\n");
}
}
$yle1 = substr($yle1,($rivinvaihto+2));
$rivinvaihto = stripos($yle1,"\n");
$rivi = substr($yle1,0,$rivinvaihto);
//print $rivinvaihto . "<br>";
}
fclose($tiedosto);
//********************
// TV2
//*******************
$tiedosto = fopen("yle2.txt","w");
$rivinvaihto = stripos($yle2,"\n");
$rivi = substr($yle2,0,$rivinvaihto);
while($rivinvaihto != 0)
{
$ind = stripos($rivi,"<td valign=\"top\"><b>");
if($ind != 0)
{
fwrite($tiedosto,substr($rivi,$ind+20,5) . "|");
$ind = stripos($rivi," </td><td>");
$rivi = substr($rivi,$ind+15);
$ind2 = stripos($rivi,"mode=www\">");
if($ind2 == 0)
{
$testi = stripos($rivi,"bgcolor");
if($testi == 0)
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind - $ind2;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
else
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind + 21 - $ind2 +3;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
}
else
{
$rivi = substr($rivi,$ind2+10);
// print $rivi . "<br>\n";
$ind = stripos($rivi,"</a>");
$pituus = $ind2 - $ind;
fwrite($tiedosto,substr($rivi,0,$ind) . "\n");
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
}
}
$yle2 = substr($yle2,($rivinvaihto+2));
$rivinvaihto = stripos($yle2,"\n");
$rivi = substr($yle2,0,$rivinvaihto);
//print $rivinvaihto . "<br>";
}
fclose($tiedosto);
//********************
// Mtv3
//*******************
$tiedosto = fopen("mtv3.txt","w");
$rivinvaihto = stripos($mtv3,"\n");
$rivi = substr($mtv3,0,$rivinvaihto);
while($rivinvaihto != 0)
{
$ind = stripos($rivi,"<td valign=\"top\"><b>");
if($ind != 0)
{
fwrite($tiedosto,substr($rivi,$ind+20,5) . "|");
$ind = stripos($rivi," </td><td");
$rivi = substr($rivi,$ind+15);
$ind2 = stripos($rivi,"mode=www\">");
if($ind2 == 0)
{
$testi = stripos($rivi,"bgcolor");
if($testi == 0)
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind - $ind2;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
else
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind + 21 - $ind2 +3;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
}
else
{
$rivi = substr($rivi,$ind2+10);
// print $rivi . "<br>\n";
$ind = stripos($rivi,"</a>");
$pituus = $ind2 - $ind;
fwrite($tiedosto,substr($rivi,0,$ind) . "\n");
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
}
}
$mtv3 = substr($mtv3,($rivinvaihto+2));
$rivinvaihto = stripos($mtv3,"\n");
$rivi = substr($mtv3,0,$rivinvaihto);
//print $rivinvaihto . "<br>";
}
fclose($tiedosto);
//********************
// nelonen
//*******************
$tiedosto = fopen("nelonen.txt","w");
$rivinvaihto = stripos($nelonen,"\n");
$rivi = substr($nelonen,0,$rivinvaihto);
// print $rivi;
while($rivinvaihto != 0)
{
$ind = stripos($rivi,"<td valign=\"top\"><b>");
// echo $ind;
if($ind != 0)
{
fwrite($tiedosto,substr($rivi,$ind+20,5) . "|");
$ind = stripos($rivi," </td><td");
$rivi = substr($rivi,$ind+15);
$ind2 = stripos($rivi,"mode=www\">");
if($ind2 == 0)
{
$testi = stripos($rivi,"bgcolor");
if($testi == 0)
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind - $ind2;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
else
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind + 21 - $ind2 +3;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
}
else
{
$rivi = substr($rivi,$ind2+10);
// print $rivi . "<br>\n";
$ind = stripos($rivi,"</a>");
$pituus = $ind2 - $ind;
fwrite($tiedosto,substr($rivi,0,$ind) . "\n");
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
}
}
$nelonen = substr($nelonen,($rivinvaihto+2));
$rivinvaihto = stripos($nelonen,"\n");
$rivi = substr($nelonen,0,$rivinvaihto);
//print $rivinvaihto . "<br>";
}
fclose($tiedosto);
//********************
// SUBTV
//*******************
$tiedosto = fopen("subtv.txt","w");
$rivinvaihto = stripos($subtv,"\n");
$rivi = substr($subtv,0,$rivinvaihto);
// print $rivi;
while($rivinvaihto != 0)
{
$ind = stripos($rivi,"<td valign=\"top\"><b>");
// echo $ind;
if($ind != 0)
{
fwrite($tiedosto,substr($rivi,$ind+20,5) . "|");
$ind = stripos($rivi," </td><td");
$rivi = substr($rivi,$ind+15);
$ind2 = stripos($rivi,"mode=www\">");
if($ind2 == 0)
{
$testi = stripos($rivi,"bgcolor");
if($testi == 0)
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind - $ind2;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
else
{
$ind2 = stripos($rivi,"</td>");
$pituus = $ind + 21 - $ind2 +3;
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
fwrite($tiedosto,substr($rivi,0,$ind2) ."\n");
}
}
else
{
$rivi = substr($rivi,$ind2+10);
// print $rivi . "<br>\n";
$ind = stripos($rivi,"</a>");
$pituus = $ind2 - $ind;
fwrite($tiedosto,substr($rivi,0,$ind) . "\n");
// print "pituus " . $pituus . " ind2 " . $ind2 . " ind " . $ind . "\n";
}
}
$subtv = substr($subtv,($rivinvaihto+2));
$rivinvaihto = stripos($subtv,"\n");
$rivi = substr($subtv,0,$rivinvaihto);
//print $rivinvaihto . "<br>";
}
fclose($tiedosto);
?>