Estou buscando as movimentações sobre um processo usando file_get_contents para buscar a página e parsear a mesma, uma vez que o TJ não fornece um webservice oficial (não que eu saiba), estou usando essa lib, removi algumas coisas que não necessito e implementei em meu código, porém, ele me retorna alguns dados “juntos” após executar uma regex.
$ url = 'http://esaj.tjce.jus.br/cpopg/search.do?'; $ url.= 'dadosConsulta.localPesquisa.cdLocal=-1'; $ url.= '&cbPesquisa=NUMPROC'; $ url.= '&dadosConsulta.valorConsulta='; /** Informe aqui o numero do processo (por get ou post ou wherever) **/ $ num_processo = $ processo->numero; $ html = file_get_contents($ url.$ num_processo); //$ html = str_replace('/^\s+|\n|\r+$ /m', '', $ html); $ html = preg_replace("/[\n\r]/","", $ html); $ doc = new DOMDocument(); @$ doc->loadHtml($ html); $ data = []; $ tblmovimentacoes = @$ doc->getElementById('tabelaTodasMovimentacoes'); foreach (@$ tblmovimentacoes->childNodes as $ t) { if($ t->lastChild->firstChild->nodeValue != $ t->lastChild->nodeValue) $ data[] = ['data' => $ t->firstChild->nodeValue, 'desc1' => trim($ t->lastChild->firstChild->nodeValue), 'desc2' => trim(str_replace($ t->lastChild->firstChild->nodeValue, '', $ t->lastChild->nodeValue))]; else $ data[] = ['data' => $ t->firstChild->nodeValue, 'desc1' => trim($ t->lastChild->firstChild->nodeValue), 'desc2' => '']; } return ['status'=> true, 'dados' => $ data];
Link de processo de exemplo: Movimentações do Processo