Gå til innhold

Hente tabell fra fotall.no


Anbefalte innlegg

Videoannonse
Annonse

 

 

<?php

define('URL', 'http://www.fotball.no/System-pages/TabellTermin/?tournamentId=125733');

$content = file_get_contents(URL);

if(!preg_match('/id="__VIEWSTATE" value="(.+?)"/', $content, $match))
   exit('No ViewState Found');

$postdata = http_build_query(array(
   '__VIEWSTATE' => $match[1],
   '__EVENTTARGET' => 'ctl00$mainContentRegion$lnkTable',
   '__ASYNCPOST' => 'true',
));

$headers = array(
   'Content-type: application/x-www-form-urlencoded',
   'User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16',
);

$options = array('http' => array(
   'method'  => 'POST',
   'header'  => implode("\r\n", $headers),
   'content' => $postdata,
));

$context = stream_context_create($options);

$content = file_get_contents(URL, false, $context);

$dom = new DOMDocument();
$dom->loadHTML('<meta http-equiv="content-type" content="text/html; charset=utf-8">'.$content);
$xpath = new DOMXPath($dom);

$tr_nodes = $xpath->query('//tbody/tr');

if($tr_nodes->length == 0)
   exit('Error');

$last_child = $tr_nodes->length - 1;

foreach($tr_nodes as $index => $tr_node){

   if($last_child == $index)
       continue;

   $values = $xpath->query('td', $tr_node);

   $position = trim($values->item(0)->nodeValue);
   $name = trim($values->item(1)->nodeValue);
   $match_count = trim($values->item(2)->nodeValue);
   $points = trim($values->item(16)->nodeValue);

   echo "$position $name ($match_count, $points)\n";
}
?>

 

 

  • Liker 2
Lenke til kommentar

Hei!

 

Tror jeg takker, men hva skal jeg gjøre videre? laste det opp på hjemmesiden?

 

Om du stirrer på koden lenge nok kommer tabellen opp.

 

Neida, men du laster det opp på hjemmesiden ja, og konfigurerer det til at det passer din nettside/design :)

  • Liker 1
Lenke til kommentar

Skal de liksom ha penger for dette?

Hva skjedde da de merket det?

 

Er rimelig grønn når det gjelder koding, men skjønte faktisk at den måtte opp på siden Ö Det jeg lurte mest på var hvordan jeg skulle konfiguere den, hvilken filtype og lignende.

Lenke til kommentar

Skal de liksom ha penger for dette?

Hva skjedde da de merket det?

 

Er rimelig grønn når det gjelder koding, men skjønte faktisk at den måtte opp på siden Ö Det jeg lurte mest på var hvordan jeg skulle konfiguere den, hvilken filtype og lignende.

På den tiden var det N3Sport som kontaktet oss. Det viste seg at tabellservice var et produkt de solgte til klubbene hvis de ønsket å ha det på sin hjemmeside. Vi fikk krav om å fjerne scriptet eller å betale abonnement.

 

Om det er N3Sport som kontrollerer det nå vet jeg ikke.

Lenke til kommentar

Ok, men denne summen regner jeg med klubben er villige til å betale. Lar det være oppe til de kontakter oss, evt vet du hvor man kan kjøpe den?

 

Likevel, er jeg fortsatt litt usikker på konfigurasjon :innocent:

Kontakt NFF (nederst på siden på linken din)

Lenke til kommentar

Jo, med mindre det eksplisitt står et sted at du har lov til å hente ut data fra siden, har du ikke lov til å hente ut noe som helst fra siden i og med at den er automatisk beskyttet av åndsverksloven. Dataene som det er snakk om i dette tilfellet er nærmest garantert blitt solgt som eksklusive rettigheter til ekstern aktør, som tydeligvis er Speaker.no i dette tilfellet. Foreslår at du forhører deg med de. For alt vi veit kan de tilby skript som henter ut dataene som en del av et abonnement på dataene, og de vil iallfall kunne tilby langt enklere formater å behandle (sannsynligvis XML-stream i en eller annen form).

Lenke til kommentar
  • 3 uker senere...

Hei!

 

Tror jeg takker, men hva skal jeg gjøre videre? laste det opp på hjemmesiden?

Det kan være lurt å lagre resultatet i en tabell eller i en fil slik at skriptet ditt ikke behøver å gå ut på nettet og hente oppdatering hver gang en besøkende går inn på siden din. Det er god skikk å ikke stjele unødvendig båndbredde når du låner innhold fra andre.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...