Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- declare(strict_types=1);
- namespace SimpleApi\Litispendencia;
- include(app_path() . '/HtmlDomParser/simple_html_dom.php');
- class ConsultaProcessualPublicaServico
- {
- protected $urlBase = 'https://portal.trf2.jus.br/portal/consulta/cons_procs.asp';
- const DIRETORIO_COOKIE = '/cookies';
- public function __construct()
- {
- }
- public function enviarDadosConsulta()
- {
- $caminhoCookieProcesso = $this->getCaminhoCookie();
- $html = $this->getHtml($this->urlBase);
- //$divFormulario = $html->find('#ConsProc');
- //$divTable = $divFormulario[0]->children(12);
- //$divDados = $divTable->find('tr');
- $numeroProcesso = '0001541-89.2006.4.02.5101';
- $campos = [
- 'Validar' => '',
- 'CampoFoco' => '',
- 'Botao' => 'Pesquisar',
- 'EstatCont' => '117829495', //$divFormulario[0]->children(3)->value,
- 'C' => '',
- 'A' => '',
- 'UsarCaptcha' => 'S', //$divFormulario[0]->children(6)->value,
- 'FecharSessao' => '',
- 'captcha' => '',
- 'gabarito' => '1', //$divFormulario[0]->children(9)->value,
- 'resposta' => '1', //$divFormulario[0]->children(10)->value,
- 'Localidade' => '0',
- 'baixado' => '0',
- 'CodLoc' => '',
- 'NumProc' => $numeroProcesso,
- 'CodDoc' => '',
- 'NumProcOrig' => '',
- 'CodOAB' => '',
- 'CodAdv' => '',
- 'TipoDocPess' => '0',
- 'NumDocPess' => '',
- 'CodTipoDocPess' => '',
- 'NomeParte' => '',
- 'NomeAdv' => '',
- 'NumInq' => '',
- 'captchaCode' => '1'
- ];
- $htmlPrimeiraRequisicao = $this->getHtmlComCurlPost($this->urlBase, $caminhoCookieProcesso, $campos);
- $htmlSegundaRequisicao = $this->getHtmlComCurl($this->urlBase, $caminhoCookieProcesso);
- dd($htmlSegundaRequisicao->plaintext);
- //$informacoes = $htmlTerceiraRequisicao->find('#ResListProc');
- //return $informacoes;
- }
- protected function prepararCamposPost(array $campos)
- {
- return http_build_query([
- 'Validar' => $campos['Validar'],
- 'CampoFoco' => $campos['CampoFoco'],
- 'Botao' => $campos['Botao'],
- 'EstatCont' => $campos['EstatCont'],
- 'C' => $campos['C'],
- 'A' => $campos['A'],
- 'UsarCaptcha' => $campos['UsarCaptcha'],
- 'FecharSessao' => $campos['FecharSessao'],
- 'captcha' => $campos['captcha'],
- 'gabarito' => $campos['gabarito'],
- 'resposta' => $campos['resposta'],
- 'Localidade' => $campos['Localidade'],
- 'CodLoc' => $campos['CodLoc'],
- 'NumProc' => $campos['NumProc'],
- 'CodDoc' => $campos['CodDoc'],
- 'NumProcOrig' => $campos['NumProcOrig'],
- 'CodOAB' => $campos['CodOAB'],
- 'CodAdv' => $campos['CodAdv'],
- 'TipoDocPess' => $campos['TipoDocPess'],
- 'NumDocPess' => $campos['NumDocPess'],
- 'CodTipoDocPess' => $campos['CodTipoDocPess'],
- 'NomeParte' => $campos['NomeParte'],
- 'NomeAdv' => $campos['NomeAdv'],
- 'NumInq' => $campos['NumInq'],
- 'captchaCode' => $campos['captchaCode']
- ]);
- }
- protected function getHtml(string $url): \simple_html_dom
- {
- return file_get_html($url, false, null, 0);
- }
- /**
- * @return string
- * @throws \Exception
- */
- protected function getCaminhoCookie(): string
- {
- $cookiesDiretorio = storage_path(self::DIRETORIO_COOKIE);
- if (!is_dir($cookiesDiretorio)) {
- mkdir($cookiesDiretorio);
- }
- $hoje = (new \DateTime('now'))->format('YmdHisu');
- return "{$cookiesDiretorio}/cookie-{$hoje}.txt";
- }
- protected function getHtmlComCurl(string $url, string $caminhoCookie): \simple_html_dom
- {
- // Inicializa o objeto CURL
- $curl = curl_init();
- // Configurações do CURL
- curl_setopt($curl, CURLOPT_URL, $url);
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($curl, CURLOPT_COOKIEFILE, $caminhoCookie);
- curl_setopt($curl, CURLOPT_COOKIEJAR, $caminhoCookie);
- $resultado = curl_exec($curl);
- curl_close($curl);
- $html = new \simple_html_dom();
- return $html->load($resultado);
- }
- protected function getHtmlComCurlPost(string $url, string $caminhoCookie, array $campos): \simple_html_dom
- {
- // Inicializa o objeto CURL
- $curl = curl_init();
- // Configurações do CURL
- curl_setopt($curl, CURLOPT_URL, $url);
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($curl, CURLOPT_COOKIEFILE, $caminhoCookie);
- curl_setopt($curl, CURLOPT_COOKIEJAR, $caminhoCookie);
- // Requisição POST
- curl_setopt($curl, CURLOPT_POST, true);
- // Campos do POST
- $resultado = curl_exec($curl);
- curl_close($curl);
- $html = new \simple_html_dom();
- return $html->load($resultado);
- }
- protected function removerEspacos(string $string): string
- {
- return trim(str_replace(' ', '', $string));
- }
- protected function tratarTexto(string $string): string
- {
- return $this->removerEspacos(html_entity_decode($string));
- }
- }
Add Comment
Please, Sign In to add comment