Código PHP:
function MinnerAplelaciones($rit){
//error_reporting('E_ALL');
echo "\r\n";
echo "Rol: " .$rit. "\r\n";
$e = explode('-', $rit);
$rol = $e[0];
$era = $e[1];
$cmd = "/usr/bin/phantomjs apelaciones.js ";
$cmd .= $rol. " " .$era;
$html_pjud = shell_exec($cmd);
$html = str_get_html($html_pjud);
$array_td = array();
foreach($html->find('div[id=divRecursos]') as $div):
foreach($div->find('td') as $td):
array_push($array_td, trim($td->outertext));
endforeach;
endforeach;
$array_td = array_chunk($array_td, 6);
for($i=0; $i <= 0; $i++):
array_shift($array_td);
endfor;
$total_search = count($array_td);
for($i=0; $i<=$total_search; $i++):
echo "\r\n";
echo "Minner Corte Apelaciones en ROL: " .$rit. " ( " .$i. " de " .$total_search. " )\r\n";
$url_causa = strip_tags($array_td[$i][0], '<a>');
$url_causa = explode('"', $url_causa);
$nombre_causa = $url_causa[4];
$url_causa = $url_causa[1];
$url_causa = "http://corte.poderjudicial.cl" .$url_causa;
$url_causa = str_replace('amp;', '', $url_causa);
$nombre_causa = strip_tags($nombre_causa);
$nombre_causa = substr($nombre_causa, 1);
$nombre_causa = preg_replace("/[0-9]/", '', trim($nombre_causa));
$nombre_causa = str_replace('-', ' ', $nombre_causa);
$fecha_ingreso = trim(strip_tags($array_td[$i][1]));
$fecha_ubicacion = trim(strip_tags($array_td[$i][3]));
$ubicacion = trim(strip_tags($array_td[$i][2]));
$caratula = trim(strip_tags($array_td[$i][5]));
//print_r($array_td[$i]);
$corte = trim(strip_tags($array_td[$i][4]));
if(($corte != "C.A. de Prueba")):
if(count($array_td[$i]) >0):
echo "Obteniendo Sentencia \r\n";
$this->init();
$this->fSocket;
$this->setopt(CURLOPT_URL, $url_causa);
$this->setopt(CURLOPT_RETURNTRANSFER, true);
$this->setopt(CURLOPT_FOLLOWLOCATION ,1);
$content_cuaderno = curl_exec($this->fSocket);
$this->destroy();
$html = str_get_html($content_cuaderno);
$array_sent = array();
$array_docs = array();
foreach($html->find('td[width=50px]') as $a):
array_push($array_docs, trim($a->outertext));
endforeach;
foreach($html->find('td[width=76px]') as $a):
array_push($array_sent, trim($a->plaintext));
endforeach;
$input = $array_sent;
$needle = "Sentencia";
$ret = array_keys(array_filter($input, function($var) use ($needle){
return strpos($var, $needle) !== false;
}));
$url_sentencia = $array_docs[$ret[0] + 1];
$url_sentencia = explode("'", $url_sentencia);
$url_sentencia = "http://corte.poderjudicial.cl" .$url_sentencia[1];
echo "URL Sentencia: " .$url_sentencia. "\r\n";
if($url_sentencia[1] != ""):
$ext = strpos($url_sentencia[1], "asociado");
if($ext === false):
$path = "/Users/server/robot/archivos_jurisprudencia/apelaciones/";
$name = "APE_" .$this->str_rand(5, 'alphanum'). "-". $this->str_rand(5, 'alphanum');
$new_name = $path.$name;
$name_sentencia = $name;
echo "Descargando Archivo (" .$name. ") \r\n";
$ch = curl_init($url_sentencia);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
$pdf_name = $new_name. ".pdf";
file_put_contents($pdf_name, $data);
echo "Creando PDF (" .$pdf_name. ") \r\n";
$pdf_txt = popen('pdftotext -layout ' .$pdf_name, 'r');
// $err_psd = strpos($pdf_txt, 'Error');
//
// if($err_psd === true):
// echo "Error al crear el PDF \r\n";
// echo "Creando MS DOC \r\n";
//
// $doc_name = $new_name. ".doc";
// file_put_contents($doc_name, $data);
// $doc_txt = popen('/usr/bin/antiword -t ' .$doc_name, 'r');
// endif;
//$name = substr($name_sentencia, 0, -4);
(string)$file = $new_name. ".txt";
echo "Contenido Extraido " .$file. "\r\n";
$path = $new_name;
debug($file);
echo "Ubicacion sentencia: " .$file. "\r\n";
$str_sentencia = file_get_contents($file);
echo $str_sentencia;
$tchar = str_word_count($str_sentencia);
if($tchar > 250):
$bd = new bd;
$bd->connect();
$sql_ins = "INSERT INTO jurisprudencia_apelaciones
(rol,nombre,tribunal,fecha_ingreso,fecha_ubicacion,ubicacion,caratula,url,path, sentencia) VALUES
('" .$rit. "','" .$nombre_causa. "','" .$corte. "','" .$fecha_ingreso. "','" .$fecha_ubicacion. "','" .$ubicacion. "','" .$caratula. "','" .$url_sentencia. "','" .$path. "','" .$sentencia. "')";
$bd->select($sql_ins);
echo "Sentencia Guadada en la BD \r\n";
else:
echo "Sentencia Inservible, pocos caracteres (" .$tchar. ") \r\n";
echo "Eliminando temporales \r\n";
//unlink($file);
//unlink($pdf_name);
endif;
endif;
endif;
endif;
endif;
echo "--------------------------------------------------------------------------------------\r\n";
endfor;
$html->clear();
// unset($array_docs);
// unset($array_sent);
// unset($array_td);
}