Här följer ett par exempel på hur man kan hämta och använda data om elitserielagen och precis som i förra inlägget handlar det om att hitta rätt länkar. Vi kommer att använda filen vi skapade i förra inlägget, har du inte läst inlägget ännu, gör det gärna innan du fortsätter.
Exempel 1: Resultat, tabell och kommande matcher
Vi klickar först in oss på stats.swehockey.se, sedan väljer vi Elitserien och Overview.
Länken till överblickssidan är http://stats.swehockey.se/stat/44/90001/overview och det är den vi kommer att hämta (Psst -Det är ingen idé att ni försöker öppna den i er webbläsare eftersom swehockey bara skickar er tillbaka till huvudsidan). Sedan öppnar vi dokumentet vi skapade i föregående inlägg och gör ändringar enligt följande; -vi byter ut sidan vi hämtar data ifrån och redigerar ett par fraser i översättningen.
<?php $page = file_get_contents("http://stats.swehockey.se/stat/44/90001/overview");
$translate = array(
'Game Winning Shots Lost' => 'Förlust straffar',
'Game Winning Shots Won' => 'Vinst straffar',
'Results' => 'Resultat',
'Round' => 'Omgång',
'Date' => 'Datum',
'Game' => 'Match', 'Venue' => 'Hall',
'Spectators' => 'Publik',
'Last update' => 'Senaste uppdatering',
'Team' => ' Lag',
'Group Standings' => 'Tabell',
'Schedule' => 'Spelschema',
'Won' => 'Vunna',
'Lost' => 'Förlorade',
'Total Points' => 'Totala Poäng',
'Tied' => 'Oavgjorda',
'Matchs Played' => 'Spelade Matcher',
'Overtime' => 'Övertid -',
'Goals For:Goals Against (Goal Difference)' => ' Gjorda mål: Insläppta Mål (Målskillnad)'
);
foreach($translate as $eng => $swe) {
$page = str_replace($eng, $swe, $page);
}
echo $page;
echo "<style>.tdTopLinks{visibility:hidden;}</style>";
?>
Resultat blir inte så jättesnyggt men jag kommer gå vidare med hur vi ändrar utseendet med hjälp av css i ett senare exempel. Först rättar vi till några länkar: Klickar vi på länkarna i mathresultaten händer ingenting; -dels behöver vi lägga till stats.swehockey.se i länken,- dels har vi ju inte samma javascript som swehockey har på sin sida. Vi passar på att rensa upp lite javascript och stylesheet länkar.
Lägg till följande i översättnings arrayen:
"javascript:openonlinewindow('" => '',
'/gameonline/' => 'http://stats.swehockey.se/gameonline/', "',
'')" => '" target="_new" ',
'<div><a href="#"' =>'<div><span ',
'</a></div></td>' => '</span></div></td>',
'<body onLoad="NewStat()">' => '<body>',
'<link rel="stylesheet" type="text/css" href="/content/stylesheet.css" />' => ' ',
'<script type="text/javascript" src="/content/CommonFunctions.js">' => ' ',
'</script>' => ' '
Här kan ni se resultatet. Testa gärna länkarna.
Exempel 2: Dagens matcher -Live resultat
Att hämta dagens matcher från swehockey är lite krångligare än de tidigare exemplen eftersom texten på sidan byts ut beroende på om det är matchdag och om det är före, under, eller efter match. Länken till dagens matcher eller Tournamentonline som de kallar det är http://stats.swehockey.se/tournamentonline/523 och det är den vi ska hämta. Eftersom sidan innehåller <meta http-equiv=”refresh” content=”65″ /> i titlen slipper vi själva bekymra oss om att uppdatera sidan för att få det senaste resultat. Nedan ser ni min kod; lämna gärna en kommentar om jag har missat att översätta något. Här kan ni se resultatet.
<?php $page = file_get_contents(http://stats.swehockey.se/tournamentonline/523);
$translate = array(
'starts' => 'börjar',
'at' => '',
'Mchens' => 'Matcher',
'Games' => 'Matcher',
'Game' => 'Matchen',
'Upcoming / In Progress' => 'Kommande/Pågående',
'Today' => 'idag',
'Final Score' => 'Slutresultat',
'1st' => 'Första',
'2nd' => 'Andra',
'3rd' => 'Tredje',
'Results' => 'Resultat',
'Last upde' => 'Senaste uppdatering',
'Team' => ' Lag',
'Overtime' => 'Övertid',
'<a href="javascript:history.back()">[Back]</a>' => '', "javascript:openonlinewindow('" => '',
'/gameonline/' => 'http://stats.swehockey.se/gameonline/',
"','')" => '" target="_new" ',
'<body onLoad="NewStat()">' => '<body>',
'<link rel="stylesheet" type="text/css" href="/content/stylesheet.css" />' => ' ',
'<script type="text/javascript" src="/content/CommonFunctions.js">' => ' ',
'</script>' => ''
);
foreach($translate as $eng => $swe) { $page = str_replace($eng, $swe, $page); }
echo $page; ?>

