Hallo,
Op het moment ben ik bezig met het maken van een script dat er voor zorgt dat ranglijsten (alpine skien) van een externe website binnen haalt. Vervolgens wil ik de data verwerken in mijn eigen site. Overigens volkomen legaal, volgens de IT manager van de desbetreffende organisatie. Nou lukt het wel om de data op te halen alleen het verwerken van de data in mijn eigen site lukt totaal niet, althans niet zoals ik wil. Ik heb het op dertig verschillende manier geprobeerd en het lukt alleen door het commando 'print' te gebruiken in PHP. Alleen daar kan ik niet de nodige bewerkingen op los laten. Wat doe ik fout?
Dit gebruik ik om de data binnen te halen. (wat overigens prima werkt)
Dit gebruik ik om de data te verwerken in mijn eigen pagina. Het resultaat is een foutmelding als output:
Catchable fatal error: Object of class DOMNodeList could not be converted to string in
Het bovenstaande lukt wel als je het onderstaande gebruikt
Het nadeel van het bovenstaande is dat ik de tekst niet kan bewerken. Het liefst wil ik de gegevens in MYSQL importeren maar als je een node niet kan converteren naar een string dan zal dit helemaal onmogelijk zijn.
PS: Ik vraag met dit topic niet om harde code maar gewoon hulp omdat ik het dit keer echt niet zelf uit kom. Niet met behulp van andere forums en ook niet met behulp van andere tutorials.
Groet,
Bjorn
Op het moment ben ik bezig met het maken van een script dat er voor zorgt dat ranglijsten (alpine skien) van een externe website binnen haalt. Vervolgens wil ik de data verwerken in mijn eigen site. Overigens volkomen legaal, volgens de IT manager van de desbetreffende organisatie. Nou lukt het wel om de data op te halen alleen het verwerken van de data in mijn eigen site lukt totaal niet, althans niet zoals ik wil. Ik heb het op dertig verschillende manier geprobeerd en het lukt alleen door het commando 'print' te gebruiken in PHP. Alleen daar kan ik niet de nodige bewerkingen op los laten. Wat doe ik fout?
Dit gebruik ik om de data binnen te halen. (wat overigens prima werkt)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| //ophalen van het document $url = 'http://www.fis-ski.com/uk/disciplines/alpineskiing/cupstandings.html?suchen=true&suchcompetitorid=&suchseason=2010§or=AL&suchgender=L&suchcup=WC&suchnation=&discipline=ALL&search=Search'; $html = file_get_contents($url); $doc = new DomDocument(); @$doc->loadHTML($html); //scores uit het document filteren $xpath = new DomXpath($doc); $titels1a = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[2]"); $titels1b = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[3]"); $titels1c = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[5]"); $titels1d = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[6]"); $titels1e = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[8]"); $titels1f = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[9]"); $titels1g = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[11]"); $titels1h = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[12]"); $titels1i = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[14]"); $titels1j = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[15]"); $titels1k = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[17]"); $titels1l = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[18]"); $titels1m = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[20]"); $titels1n = $xpath->evaluate("/html/body/table/tr[4]//tr[4]//td[21]"); |
Dit gebruik ik om de data te verwerken in mijn eigen pagina. Het resultaat is een foutmelding als output:
Catchable fatal error: Object of class DOMNodeList could not be converted to string in
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td> <?php //hier plaatsen we het nieuws in zijn eigen tabel\\ echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">". "<tr>". "<td>". "<table width=\"190\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">". "<tr>". "<td><img src=\"images/spacer-white.gif\" width=\"10\" height=\"10\"/></td>". "</tr>". "<tr>". "<td align=\"center\" class=\"plain-text-table-bold\">{$titels1a}\"></td>". "</tr>". "<tr>". "</table>". "</td>". "<td width=\"10\"> </td>". "</tr>". "</table>"; //hier beginnen we de indeling en printen de tabel in het bijhorende cell ?> </tr> </td> </table> |
Het bovenstaande lukt wel als je het onderstaande gebruikt
code:
1
2
3
4
5
| print $titels1a->item(0)->nodeValue . "\n"; print $titels1b->item(0)->nodeValue . "\n"; print $titels1c->item(0)->nodeValue . "\n"; print $titels1d->item(0)->nodeValue . "\n"; print $titels1e->item(0)->nodeValue . "\n"; |
Het nadeel van het bovenstaande is dat ik de tekst niet kan bewerken. Het liefst wil ik de gegevens in MYSQL importeren maar als je een node niet kan converteren naar een string dan zal dit helemaal onmogelijk zijn.
PS: Ik vraag met dit topic niet om harde code maar gewoon hulp omdat ik het dit keer echt niet zelf uit kom. Niet met behulp van andere forums en ook niet met behulp van andere tutorials.
Groet,
Bjorn