Sto cercando di 'duplicare' in perl questo listato php
codice:
$doc = new DOMDocument();
$q = $_GET["q"];
$q = trim(str_replace (" ",".",$q));
$url= "http://listaeagles.altervista.org/index.php?q=$q";
@$doc->loadHTMLFile($url)
or die("Problemi nel caricare la pagina");
$xpath = new DOMXPath($doc);
$query = "//table[@id='table5']/tr/td[1]";
$debugList = $xpath->evaluate($query);
foreach ($debugList as $domElement){
$domNode = $output->importNode($domElement, true);
echo ($domNode->firstChild->nodeValue . "\n"I);
}
Cosa fa?
* Carica da remoto un file html, una vera e propria pagina html, ma senza farne la validazione perchè tanto non c'è nulla di ben-formattato in quella pagina !
* Tramite una analisi del DOM XML e una XPATH, vengono ricavati un elenco di nodi corrispondenti all'xpath, praticamente chiedo l'elenco completo delle celle della prima colonna della tabella con id 'table5', questo è il senso dell'xpath
* Estrapolo il valore stringa di ogni nodo, cioè: dato che sono elementi TD (celle di tabelle html), estrapolo il testo in esse contenuto.
* Inserire questi valori in un array (ma questo in perl lo so fare)
l mio problema è che ho visto Googlando come caricare un file (per esempio con get, che è semplicissimo), ho visto come creare una query XPath, ma poi nessun listato, e nessuna prova da me prodotta, mi aiutano a usare l'xpath sul documento caricato con get restituendomi un elenco dei tag html che vi corrispondano.
Dato che perl è nato per l'analisi dei dati, beh, sono certissimo che si possa fare.