Witam, mam taki oto skrypt który ma za zadanie wyciągać z podstron innego serwisu pewne informacje, a mianowicie: adres do miniatury serialu, ilość odcinków, gatunki, czas trwania odcinka, typ serialu, jego status oraz producentów.
O ile typ i status wyciągam poprawnie, tak sprawa komplikuje się przy reszcie informacji - między tagami html występują taby, białe znaki, znaki nowej linii itd. Przykładowo:
<div class="spaceit"><span class="dark_text">Episodes:
</span> 25
<div class="spaceit"><span class="dark_text">Aired:
</span> Jul 8, 2012 to Dec 23, 2012
</div> <div><span class="dark_text">Producers:
</span> <a href="http://myanimelist.net/anime.php?p=17">Aniplex
</a>,
<a href="http://myanimelist.net/anime.php?p=56">A-1 Pictures
</a>,
<a href="http://myanimelist.net/anime.php?p=79">Genco
</a>,
<a href="http://myanimelist.net/anime.php?p=315">DAX Production
</a>,
<a href="http://myanimelist.net/anime.php?p=493">Aniplex of America
</a><sup><small>L
</small></sup>,
<a href="http://myanimelist.net/anime.php?p=681">ASCII Media Works
</a></div><div class="spaceit"><span class="dark_text">Genres:
</span> <a href="http://myanimelist.net/anime.php?genre[]=1">Action
</a>,
<a href="http://myanimelist.net/anime.php?genre[]=2">Adventure
</a>,
<a href="http://myanimelist.net/anime.php?genre[]=10">Fantasy
</a>,
<a href="http://myanimelist.net/anime.php?genre[]=11">Game
</a>,
<a href="http://myanimelist.net/anime.php?genre[]=22">Romance
</a>,
<a href="http://myanimelist.net/anime.php?genre[]=27">Shounen
</a></div><div><span class="dark_text">Duration:
</span> 23 min. per episode
</div><div class="spaceit"><span class="dark_text">Rating:
</span> PG-13 - Teens 13 or older
</div>
Jak przerobić ten skrypt aby poprawnie pobierał dane które wymieniłem do zmiennych, bez znaczników html?
function anime_bigimg($animeid)
{
polacz_mysql('infobase');
$query="SELECT * FROM anime WHERE id='".$animeid."'";
$lineend="\r\n";
$baseurl="http://myanimelist.net/anime/{$mal}";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $baseurl);
curl_setopt($ch, CURLOPT_USERAGENT, 'Opera/9.80 (Windows NT 5.1; Edition Campaign 21) Presto/2.12.388 Version/12.14');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt
($ch, CURLOPT_COOKIEJAR
, dirname(__file__) . '/cookies.txt'); curl_setopt
($ch, CURLOPT_COOKIEFILE
, dirname(__file__) . '/cookies.txt'); $pg = curl_get_page($ch);
while (strpos($pg, 'getSessionCookies') !== false) {
$pg = curl_get_page($ch);
}
curl_close($ch);
//preg_match_all('|<img src="http://cdn.myanimelist.net/images/anime/(.+?)" alt="|', $pg, $bigimg);
preg_match_all('|Duration:</span> (.+?)</div>" alt="|', $pg, $trwanie); echo $ilosc[1][0].'<br>'; echo $trwanie[1][0].'<br>'; echo $status[1][0].'<br>'; }
Przykładowa strona z której będą pobierane dane:
http://myanimelist.net/anime/11757/Sword_Art_Online (na każdej tego typu karcie filmu białe znaki, tagi html i spacje występują w takiej samej formie)
Z góry dzięki.