- Home
- Categorie
- Coding e Sistemistica
- PHP
- Parsing pagina web con php
-
Parsing pagina web con php
Ciao
", "r");
sul sito vvtv.it
ho fatto un player FLV in flash che importa video da YouTube
per ottenere l'url degli FLV faccio un parsing della pag di youtube con il seguente codice
[php]
$handle = @file_get_contents("
$trim1 = stristr($handle, 'player2.swf?'); //elimina tutto ciò che precede il testo specificato
$trim2 = substr($trim1, 12);//elimina i primi 12 caratteri della stringa cioè "player2.swf?"
$fine_stringa = strpos($trim2, ','); //restituisce la posizione della virgoletta
$stringa = substr($trim2, 0, ($fine_stringa-1)); //la stringa dall'inizio alla virgoletta
[/php]il caricamento della pagina risulta però molto lentoPotete consigliarmi qualche trucco per velocizzarlo?
Grazie
-
- implementa una cache così che solo il primo caricamento sia lento
- prova ad usare una connessione diretta via socket o CURL alla pagina invece della funzione file_get_contents()
-
Potresti spiegarmi meglio?
non so cosa sia una connessione diretta via socket o CURL ne come si faccia.Grazie
-
Ciao per avere alcune informazioni sui filmati di youtube devo fare un parsing xml, non conoscendo le funzioni legate all'xml
l'ho fatto "manualmente" con il seguente codice[php]
$xml = @file_get_contents("http://www.youtube.com/api2_rest?method=youtube.videos.get_details&dev_id=0WqOWt-cmrI&video_id=mxMqpReA9hs");
$trim1 = stristr($xml, '<length_seconds>'); //elimina tutto ciò che precede il testo specificato
$trim2 = substr($trim1, 16);//elimina i primi 12 caratteri della stringa cioè "<length_seconds>"
$fine_stringa = strpos($trim2, '<'); //restituisce la posizione della virgoletta
$stringa = substr($trim2, 0, ($fine_stringa)); //la stringa dall'inizio alla virgoletta
[/php]Sembrerebbe che in alcuni casi non restituisca il valoreHo visto che esistono delle funzioni specifiche per il parsing xml,
pensate che utilizzando tali funzioni potrei averne vantaggi in termini di correttezza e velocità di esecuzione?Grazie
Giuseppe
-
Ciao GC,
Ho unito i due threads da te aperti in uno unico
ciao!