Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

peRito

preg_match_all

Recommended Posts

Galera, ja vi dois tópicos no forum falando sobre o mesmo assunto, porém continuo apanhando.. não sei porque não funfa ;/

 

Se alguém puder dar uma olhadinha:

 

function getMLResult($query, $pid, $is_cached, $delete_older_than, $min_cache_size)

 

{

 

$h=$this->LoadCache('E_'.$this->EncodeS(strtolower($query)).".gz",$delete_older_than);

 

$cached=$h!="";

 

if ($h=="") {

 

$h=$this->downloadPage("

http://pmstrk.mercadolivre.com.br/jm/PmsTrk?tool=5776296&go=/jm/searchXml?as_word=" . urlencode($query) . "");

if ($h=="") return array();

 

}

 

if ($is_cached&&!$cached&&(strlen($h)>$min_cache_siz)) $this->SaveCache('E_'.$this->EncodeS(strtolower($query)).".gz", $h);

 

$result=array();

 

$array=array();

 

$res=array();

 

preg_match_all("|<item>(.*?)</item>|si", $h, $array);

 

$result["link"]= $this->strip_tag("link", $h);

 

for($i = 0; $i < count($array[1]) && $i < 10; $i++)

 

{

 

$l = array();

 

$l["title"] = $this->strip_tag("title", $array[1][$i]);

 

$l["url"] = str_replace("&", "&", $this->strip_tag("link", $array[1][$i]));

 

$l["desc"] = $this->strip_tag("subtitle", $array[1][$i]);

 

$res[] = $l;

 

}

 

$result["list"]=$res;

 

return $result;

 

}

 

 

eu imprimo o $h na tela, e ele mostra a pagina do mercado livre inteira normalmente, porém não consegue pegar os termos que preciso..

 

Ps:. O site é esse: (XML)

 

http://www.mercadolivre.com.br/jm/searchXml?as_word="palavra-chave"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá uma olhada desse post em diante e veja se te ajuda a fazer de um jeito que não vai te deixar, futuramente, maluco com um código inflexível visto que, com ER, se o ML mudar um espaço de uma tag no layout e sua ER não esperar por isso, o código deixa de funcionar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.