HTML DOM php
Pagina: 1 2 3 4 5 6 volgende »
ik ben bezig scriptje die deze stappen automatiseren
Net 5, SBS 6 en Veronica:
1. Gebruik http://www.sbs6.nl/, http://www.net5.nl/ of http://www.veronicatv.nl/ afhankelijk van de gewenste zender. Deze uitleg gaat uit van http://www.sbs6.nl/.
2. Open http://www.sbs6.nl/ajax/Video/page/1, http://www.sbs6.nl/ajax/Video/page/2, etc. totdat je het gewenste aantal video's hebt bereikt. Sla hiervan de URLs naar de afleveringenpagina's op.
3. Open een afleveringenpagina uit stap 2 en zoek in de html-code naar een javascriptblok met "playerID" en "@videoPlayer". Sla de bijbehorende waardes op.
4. Open http://c.brightcove.com/services/viewer/htmlFederated?playerID= + playerID-waarde uit stap 3 + &@videoPlayer= + @videoPlayer-waarde uit stap 3. Let op: als je deze pagina opent, moetje de referrer instellen op bijvoorbeeld http://www.sbs6.nl/. De pagina heeft namelijk een domeinrestrictie om het embedden in andere sites onmogelijk te maken.
5. Zoek in de pagina van stap 4 naar een javascriptblok met daarin driemaal "defaultURL". De bijbehorende waardes zijn gewoon http-links naar de video's die je direct kunt gebruiken.
ik heb nog geen werkend beginnetje
wie kan me helpen?
alvast bedankt
Robert-Jan
Gewijzigd op 13/09/2012 21:03:54 door Keizer Webdesign
En wat is je uiteindelijke vraag?
RobertJan Keizer op 13/09/2012 20:55:59:
ik ben bezig scriptje die deze stappen automatiseren
Net 5, SBS 6 en Veronica:
1. Gebruik http://www.sbs6.nl/, http://www.net5.nl/ of http://www.veronicatv.nl/ afhankelijk van de gewenste zender. Deze uitleg gaat uit van http://www.sbs6.nl/.
2. Open http://www.sbs6.nl/ajax/Video/page/1, http://www.sbs6.nl/ajax/Video/page/2, etc. totdat je het gewenste aantal video's hebt bereikt. Sla hiervan de URLs naar de afleveringenpagina's op.
3. Open een afleveringenpagina uit stap 2 en zoek in de html-code naar een javascriptblok met "playerID" en "@videoPlayer". Sla de bijbehorende waardes op.
4. Open http://c.brightcove.com/services/viewer/htmlFederated?playerID= + playerID-waarde uit stap 3 + &@videoPlayer= + @videoPlayer-waarde uit stap 3. Let op: als je deze pagina opent, moetje de referrer instellen op bijvoorbeeld http://www.sbs6.nl/. De pagina heeft namelijk een domeinrestrictie om het embedden in andere sites onmogelijk te maken.
5. Zoek in de pagina van stap 4 naar een javascriptblok met daarin driemaal "defaultURL". De bijbehorende waardes zijn gewoon http-links naar de video's die je direct kunt gebruiken.
ik ben bezig scriptje die deze stappen automatiseren
Net 5, SBS 6 en Veronica:
1. Gebruik http://www.sbs6.nl/, http://www.net5.nl/ of http://www.veronicatv.nl/ afhankelijk van de gewenste zender. Deze uitleg gaat uit van http://www.sbs6.nl/.
2. Open http://www.sbs6.nl/ajax/Video/page/1, http://www.sbs6.nl/ajax/Video/page/2, etc. totdat je het gewenste aantal video's hebt bereikt. Sla hiervan de URLs naar de afleveringenpagina's op.
3. Open een afleveringenpagina uit stap 2 en zoek in de html-code naar een javascriptblok met "playerID" en "@videoPlayer". Sla de bijbehorende waardes op.
4. Open http://c.brightcove.com/services/viewer/htmlFederated?playerID= + playerID-waarde uit stap 3 + &@videoPlayer= + @videoPlayer-waarde uit stap 3. Let op: als je deze pagina opent, moetje de referrer instellen op bijvoorbeeld http://www.sbs6.nl/. De pagina heeft namelijk een domeinrestrictie om het embedden in andere sites onmogelijk te maken.
5. Zoek in de pagina van stap 4 naar een javascriptblok met daarin driemaal "defaultURL". De bijbehorende waardes zijn gewoon http-links naar de video's die je direct kunt gebruiken.
dus het scrape van uitzendingen
Ook al is het XML, dan zou ik alsnog toestemming vragen om te publiceren. XML is geen vrijbrief om iets auteursrechtenvrij te laten zijn.
Gewijzigd op 13/09/2012 21:11:44 door - Ariën -
Gewijzigd op 13/09/2012 21:18:49 door Keizer Webdesign
gebruik eens leestekens a.u.b.
Intellectuele eigendomsrechten
Alle eigendomsrechten (inclusief de intellectuele eigendomsrechten) op al het materiaal inclusief maar niet beperkt tot alle teksten, foto’s, beelden, geluiden, formats, merken en programmatuur van de Websites zijn voorbehouden aan SBS en/of haar licentiegevers. De inhoud van de Websites is bestemd voor persoonlijk, niet-commercieel, gebruik. Voor elk ander gebruik is vooraf schriftelijke toestemming van SBS vereist.
Toevoeging op 13/09/2012 21:20:20:
Leestekens er in gezet!!!
Code (php)
alleen werkt hij niet
Kan je nog wat specifieker zijn, dan "werkt niet?"
Vertaal eens? En waar komt die functie vandaan denk je?
ik zou graag willen weten of ik data van een site kan halen en die vervolgens in een xml bestand kan zetten. als dat mogelijk is zou iemand dan willen uitleggen hoe?
alvast bedankt,
RobertJan
Werkt je class-aanroep wel? Dus alles juist geïncluded en aangeroepen?
Het kan ook ongeveer zo: (dit haalt een stuk tekst weg uit een lap html):
Code (php)
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
// TAAK 1: verkrijg meditatie
// TAAK 1: verkrijg meditatie
$tekst = file_get_contents('http://hghg.nl/index.php?view=article&catid=16%3Akerkbode&id=522%3Akerkbode-68-18&tmpl=component&print=1&layout=default&page=&option=com_content&Itemid=24');
//$tekst = htmlentities($tekst);
$tekst = tussen($tekst, '<strong>', '<p align="center">');
$tekst = strip_tags($tekst, "<em></em>");
$tekst = str_replace(array(" ", "\t", '‘', '’', '“', '”'), '', $tekst);
$regels = explode(PHP_EOL, $tekst);
$regels = array_filter($regels, create_function('$a', 'return trim($a)!="";'));
$regels = array_values($regels);
// verkrijg delen
$titel = trim($regels[0]);
list($vers, $locatie) = explode("</em>", $regels[1]);
$vers = '<i>' . str_replace("<em>", '', $vers) . '</i>';
$locatie = '<u>' . trim(str_replace(array("(", ")"), '', $locatie)) . '</u>';
$schrijver = end($regels);
$tekst = array_slice($regels, 2, (count($regels) - 3));
$tekst = '<p>' . implode("</p>\n</p>", $tekst) . '</p>';
echo '<h1>' . $titel . '</h1>' . $vers . $locatie . '<br><br><br>' . $tekst . '<br><br><br>' . $schrijver;
?>
// TAAK 1: verkrijg meditatie
// TAAK 1: verkrijg meditatie
$tekst = file_get_contents('http://hghg.nl/index.php?view=article&catid=16%3Akerkbode&id=522%3Akerkbode-68-18&tmpl=component&print=1&layout=default&page=&option=com_content&Itemid=24');
//$tekst = htmlentities($tekst);
$tekst = tussen($tekst, '<strong>', '<p align="center">');
$tekst = strip_tags($tekst, "<em></em>");
$tekst = str_replace(array(" ", "\t", '‘', '’', '“', '”'), '', $tekst);
$regels = explode(PHP_EOL, $tekst);
$regels = array_filter($regels, create_function('$a', 'return trim($a)!="";'));
$regels = array_values($regels);
// verkrijg delen
$titel = trim($regels[0]);
list($vers, $locatie) = explode("</em>", $regels[1]);
$vers = '<i>' . str_replace("<em>", '', $vers) . '</i>';
$locatie = '<u>' . trim(str_replace(array("(", ")"), '', $locatie)) . '</u>';
$schrijver = end($regels);
$tekst = array_slice($regels, 2, (count($regels) - 3));
$tekst = '<p>' . implode("</p>\n</p>", $tekst) . '</p>';
echo '<h1>' . $titel . '</h1>' . $vers . $locatie . '<br><br><br>' . $tekst . '<br><br><br>' . $schrijver;
?>
En iets moeilijker, met inloggen etc.
Dit haalt alle uitzendingen van kerkdienstgemist.nl:
Code (php)
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?php
// TAAK 3: preken downloaden van kerkuitzendinggemist.nl
$pagina = 'http://kerkdienstgemist.nl/playlists/legacy.html?id=369';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $pagina);
// set url to post to
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 600000);
// times out after Ns
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// times out after Ns
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_POST, 0);
// set POST method
curl_setopt($ch, CURLOPT_FAILONERROR, 0);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res = curl_exec($ch);
$res = tussen($res, "<table border='0' cellpadding='0' cellspacing='0' class='center'>", '</table>');
//$res = strip_tags($res, "<a></a><img>");
$res = explode("</tr>", $res);
$res = array_slice($res, 0, 3);
foreach($res as $res2)
{
$url = tussen($res2, "</td>" . PHP_EOL . "<td class='buttons'>", '" title="Downloaden');
$url = str_replace('<a href="', 'http://kerkdienstgemist.nl', $url);
$url = trim($url);
$echo[] = 'cURL() haalt '.$url.' op.';
// stap 3b
$pagina = $url;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $pagina);
// set url to post to
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 600000);
// times out after Ns
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// times out after Ns
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_POST, 0);
// set POST method
curl_setopt($ch, CURLOPT_FAILONERROR, 0);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res = curl_exec($ch);
// <html><body>You are being <a
// href="http://media.kerkdienstgemist.nl:80/11304060/2012-06-10-1800.mp3?Signature=13U0StxNq7K%2BUn%2BmmTJ3cb8q6d8%3D&Expires=1339865566&AWSAccessKeyId=1VYKRTJ5FFKT5B6F4NR2">redirected</a>.</body></html>
$res = str_replace('<html><body>You are being <a href="', '', $res);
$res = str_replace('">redirected</a>.</body></html>', '', $res);
//$echo[] = 'cURL() heeft het echte pad verkregen: '.$res;
// stap 3c, bestand downloaden en opslaan
// bewerk en verkrijg gegevens voor opslag
$naam = $url = $res;
// naam krijgen
$naam = str_replace("http://media.kerkdienstgemist.nl:80/", "", $naam);
list($nummer, $datum_en_meer) = explode("/", $naam);
list($datum, $opties) = explode("?", $datum_en_meer);
$naam = $datum;
// datum krijgen
$datum = str_replace(".mp3", "", $naam);
$datum = $datum;
list($jaar, $maand, $dag, $tijd) = explode("-", $datum);
$tijd = substr($tijd, 0, 2) . ":" . substr($tijd, 2, 2) . ':00';
$datum = $jaar . '-' . $maand . '-' . $dag . ' ' . $tijd;
?>
Uiteraard sla ik het ook nog een keer op ;).
// TAAK 3: preken downloaden van kerkuitzendinggemist.nl
$pagina = 'http://kerkdienstgemist.nl/playlists/legacy.html?id=369';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $pagina);
// set url to post to
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 600000);
// times out after Ns
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// times out after Ns
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_POST, 0);
// set POST method
curl_setopt($ch, CURLOPT_FAILONERROR, 0);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res = curl_exec($ch);
$res = tussen($res, "<table border='0' cellpadding='0' cellspacing='0' class='center'>", '</table>');
//$res = strip_tags($res, "<a></a><img>");
$res = explode("</tr>", $res);
$res = array_slice($res, 0, 3);
foreach($res as $res2)
{
$url = tussen($res2, "</td>" . PHP_EOL . "<td class='buttons'>", '" title="Downloaden');
$url = str_replace('<a href="', 'http://kerkdienstgemist.nl', $url);
$url = trim($url);
$echo[] = 'cURL() haalt '.$url.' op.';
// stap 3b
$pagina = $url;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $pagina);
// set url to post to
curl_setopt($ch, CURLOPT_COOKIESESSION, 1);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_DNS_USE_GLOBAL_CACHE, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// return into a variable
curl_setopt($ch, CURLOPT_TIMEOUT, 600000);
// times out after Ns
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// times out after Ns
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_POST, 0);
// set POST method
curl_setopt($ch, CURLOPT_FAILONERROR, 0);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res = curl_exec($ch);
// <html><body>You are being <a
// href="http://media.kerkdienstgemist.nl:80/11304060/2012-06-10-1800.mp3?Signature=13U0StxNq7K%2BUn%2BmmTJ3cb8q6d8%3D&Expires=1339865566&AWSAccessKeyId=1VYKRTJ5FFKT5B6F4NR2">redirected</a>.</body></html>
$res = str_replace('<html><body>You are being <a href="', '', $res);
$res = str_replace('">redirected</a>.</body></html>', '', $res);
//$echo[] = 'cURL() heeft het echte pad verkregen: '.$res;
// stap 3c, bestand downloaden en opslaan
// bewerk en verkrijg gegevens voor opslag
$naam = $url = $res;
// naam krijgen
$naam = str_replace("http://media.kerkdienstgemist.nl:80/", "", $naam);
list($nummer, $datum_en_meer) = explode("/", $naam);
list($datum, $opties) = explode("?", $datum_en_meer);
$naam = $datum;
// datum krijgen
$datum = str_replace(".mp3", "", $naam);
$datum = $datum;
list($jaar, $maand, $dag, $tijd) = explode("-", $datum);
$tijd = substr($tijd, 0, 2) . ":" . substr($tijd, 2, 2) . ':00';
$datum = $jaar . '-' . $maand . '-' . $dag . ' ' . $tijd;
?>
Uiteraard sla ik het ook nog een keer op ;).
Als mijn xml er bijv. zo uit ziet
<music>
<song>
<id>1</id>
<title>Someone Like You</title>
<artist>Adele</artist>
<thumb_url>http://api.androidhive.info/music/images/adele.png</thumb_url>
</song>
</music>
en ik wil informatie van bijv. top40.nl hier in zetten hoe doe ik dat dan?
id = plaatsnummer
title = titel
artist = artiest
thumb_url = afbeelding
Bedankt deze code.
Ik heb alleen nog een vraag.
Wat als ik nou van http://www.sbs6.nl/ajax/Video/page/1 een afbeelding wil pakken:
<span class="icon btnIconVideo"> </span></a>
<div class="iBody" style="width:auto;">
<h2><a href="/programmas/the-price-is-right/videos/seizoen-0/aflevering-60/the-price-is-right">The Price is Right</a></h2><p><a href="/programmas/the-price-is-right/videos/seizoen-0/aflevering-60/the-price-is-right">Aflevering 60</a></p><p class="alt"><a href="/programmas/the-price-is-right/videos/seizoen-0/aflevering-60/the-price-is-right">16 november / 30:19 min</a></p> </div>
</div>
<div class="i iBorder" style="">
<a href="/programmas/droomhuis-op-het-platteland/videos/seizoen-0/aflevering-42/droomhuis-op-het-platteland" class="m mLeft" >
<img src="/data/thumb/sbs_media_image/1241000/1241112/w100.350bb_r16-9_ebfe4e4ebf5f243d5875f0b0be880cd4.jpg" alt="Droomhuis op het platteland" width="100" height="56"/>
Daar van dus het kopje <img></img> en dan wil ik alleen die link hebben:
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
// TAAK 1: verkrijg meditatie
// TAAK 1: verkrijg meditatie
$tekst = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
//$tekst = htmlentities($tekst);
$tekst = strip_tags($tekst, "<img></img>");
echo '' . $tekst . '';
?>
// TAAK 1: verkrijg meditatie
// TAAK 1: verkrijg meditatie
$tekst = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
//$tekst = htmlentities($tekst);
$tekst = strip_tags($tekst, "<img></img>");
echo '' . $tekst . '';
?>
dit hier boven werkt niet wat moet ik dan nog veranderen?
Alvast bedankt
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
// laad HTML in
$html = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
// strip alles behalve de <img>'s (en kale tekst...)
$html = strip_tags($html, "<img></img>");
// maak de src kloppend, want hoe weet je browser waar je het vandaan moet halen?
$html = str_replace('src="/', 'src="http://www.sbs6.nl/', $html);
// neem nu alle afbeeldingen (eventueel kan regel 7 dus weg)
preg_match_all('/(<img[^>]+>)/i', $html, $imgs);
// en laat eens gewoon zien wat we hebben...
// je zou die [0] weg kunnen halen: dan krijg je alles dubbel...
echo '<pre>' . print_r($imgs[0], true) . '</pre>';
// was dat zo moeilijk? StackOverflow via Google....
?>
// laad HTML in
$html = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
// strip alles behalve de <img>'s (en kale tekst...)
$html = strip_tags($html, "<img></img>");
// maak de src kloppend, want hoe weet je browser waar je het vandaan moet halen?
$html = str_replace('src="/', 'src="http://www.sbs6.nl/', $html);
// neem nu alle afbeeldingen (eventueel kan regel 7 dus weg)
preg_match_all('/(<img[^>]+>)/i', $html, $imgs);
// en laat eens gewoon zien wat we hebben...
// je zou die [0] weg kunnen halen: dan krijg je alles dubbel...
echo '<pre>' . print_r($imgs[0], true) . '</pre>';
// was dat zo moeilijk? StackOverflow via Google....
?>
Ik moet ook Google gebruiken hoor.
Dat is helemaal niet erg. Kan je zelf ook...
Gewijzigd op 17/11/2012 08:41:05 door Eddy E
ik heb deze code maar die werkt niet:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
// laad HTML in
$html = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1, http://www.sbs6.nl/ajax/Video/page/2, http://www.sbs6.nl/ajax/Video/page/3, http://www.sbs6.nl/ajax/Video/page/4, http://www.sbs6.nl/ajax/Video/page/5, http://www.sbs6.nl/ajax/Video/page/6, http://www.sbs6.nl/ajax/Video/page/7, http://www.sbs6.nl/ajax/Video/page/8, http://www.sbs6.nl/ajax/Video/page/9');
// strip alles behalve de <img>'s (en kale tekst...)
$html = strip_tags($html, "<img></img>");
// maak de src kloppend, want hoe weet je browser waar je het vandaan moet halen?
$html = str_replace('src="/', 'src="http://www.sbs6.nl/', $html);
// neem nu alle afbeeldingen (eventueel kan regel 7 dus weg)
preg_match_all('/(<img[^>]+>)/i', $html, $imgs);
// en laat eens gewoon zien wat we hebben...
// je zou die [0] weg kunnen halen: dan krijg je alles dubbel...
echo '<pre>' . print_r($imgs[0], true) . '</pre>';
// was dat zo moeilijk? StackOverflow via Google....
?>
// laad HTML in
$html = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1, http://www.sbs6.nl/ajax/Video/page/2, http://www.sbs6.nl/ajax/Video/page/3, http://www.sbs6.nl/ajax/Video/page/4, http://www.sbs6.nl/ajax/Video/page/5, http://www.sbs6.nl/ajax/Video/page/6, http://www.sbs6.nl/ajax/Video/page/7, http://www.sbs6.nl/ajax/Video/page/8, http://www.sbs6.nl/ajax/Video/page/9');
// strip alles behalve de <img>'s (en kale tekst...)
$html = strip_tags($html, "<img></img>");
// maak de src kloppend, want hoe weet je browser waar je het vandaan moet halen?
$html = str_replace('src="/', 'src="http://www.sbs6.nl/', $html);
// neem nu alle afbeeldingen (eventueel kan regel 7 dus weg)
preg_match_all('/(<img[^>]+>)/i', $html, $imgs);
// en laat eens gewoon zien wat we hebben...
// je zou die [0] weg kunnen halen: dan krijg je alles dubbel...
echo '<pre>' . print_r($imgs[0], true) . '</pre>';
// was dat zo moeilijk? StackOverflow via Google....
?>
Gewijzigd op 01/12/2012 20:33:57 door Keizer Webdesign
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$page1 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
$page2 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/2');
$page3 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/3');
$page4 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/4');
$page5 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/5');
$page6 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/6');
$page7 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/7');
$page8 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/8');
$page9 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/9');
$html = str_get_html($page1,$page2,$page3,$page4,$page5,$page6,$page7,$page8,$page9);
echo '<pre>' . $html . '</pre>';
?>
$page1 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/1');
$page2 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/2');
$page3 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/3');
$page4 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/4');
$page5 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/5');
$page6 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/6');
$page7 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/7');
$page8 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/8');
$page9 = file_get_contents('http://www.sbs6.nl/ajax/Video/page/9');
$html = str_get_html($page1,$page2,$page3,$page4,$page5,$page6,$page7,$page8,$page9);
echo '<pre>' . $html . '</pre>';
?>
?>
Maar wat is er fout?
Gewijzigd op 02/12/2012 23:22:59 door Keizer Webdesign
We hebben geen glazen bol ;-)
En wat doet: str_get_html?