zservices/query

巴西联邦和州政府服务的查询包。

1.2.4 2017-08-07 12:56 UTC

README

Laravel 5 Latest Stable Version Total Downloads Latest Unstable Version License Build Status Dependency Status Issues Status Stars Status Code Climate Issue Count Test Coverage Scrutinizer Code Quality

用于搜索巴西联邦和州政府信息的包

请求服务,返回服务的cookiecaptcha。用户输入captcha后,再次请求,返回CNPJ信息。

本包应负责任使用,作者和贡献者不应对使用本包进行的实施/行动负责。

注意

本包旨在通过ERP或需要数据一致性的服务简化查询,并非用于作为bot使用。

所有实施均由您负责。

自动识别验证码

已开发了一个包,便于自动解决验证码,请自行负责使用。

本包已具有相关引用。

示例

use zServices\ReceitaFederal\Search as ReceitaFederal;

$service = (new ReceitaFederal)->service(); 
$request = $service->request(); // inicia requisição na receita federal

$cookie = $request->cookie();
$captcha = $request->captcha();

$document = '54787138000101' // CNPJ
$decaptcher = (new \Captcha\DeathByCaptcha\Service)->credentials('yourLogin', 'yourPassword');
$service->decaptcher($decaptcher); // Passa o serviço que será usado para quebra do captcha
$array = $search->data($cnpj, $cookie, $captcha, [])->scraping(); // após alguns segundos ele retorna array com as informações da entidade.

目前包只实现了DeathByCaptcha,这是一个付费服务,但每个验证码包的价格非常低。请访问网站并购买一个计划。

稳定版本

1.2.4

安装

$ composer require zservices/query 1.*

Laravel 5

config/app.php中配置提供者和别名

'providers' => [
    // ....
      zServices\Laravel\ServicesProvider::class,
    //...
];

'aliases' => [
    //...
    'Sintegra' => zServices\Laravel\SintegraFacade::class,
    'ReceitaFederal' => zServices\Laravel\ReceitaFederalFacade::class,
    //...
];
use ReceitaFederal;
$service = ReceitaFederal::service()->request();

return view('receitafederal.query.example',[
    'cookie' => $service->cookie(),
    'image'  => $service->captcha()
]);

示例

联邦税务局

$rf = receitaFederal(); // retornará um array com cookie e base64 captcha

请求数据

$rf = receitaFederal($cnpj, $cookie, $captcha); // retornará um array com os dados do CNPJ na Receita Federal

use zServices\ReceitaFederal\Search as ReceitaFederal;
$search = (new ReceitaFederal)->service()->request(); // initialize

$captchaBase64Image = $search->captcha(); // captura base64_decode da imagem
$cookieRequest = $search->cookie(); // captura o cookie do request iniciado

表单后的数据

// Requisitar dados
use zServices\ReceitaFederal\Search as ReceitaFederal;

$search = (new ReceitaFederal)->service();
$crawler = $search->data($cnpj, $cookie, $captcha, []);
$arrayData = $crawler->scraping(); // array com as informações da entidade

要查询联邦税务局,只需获取cookie和captcha图像,解决captcha后,需要将cookie和解决后的字符串返回给服务,它将返回一个包含所提供CNPJ信息的关联数组。

圣保罗州Sintegra

助手

$rf = sintegra(); // retornará um array com cookie e base64 captcha

请求数据

$rf = sintegra($cnpj, $cookie, $captcha, $params); // retornará um array com os dados do documento no Sintegra

use zServices\Sintegra\Search as Sintegra;
$search = (new Sintegra)->service('SP')->request(); // initialize

$captchaBase64Image = $search->captcha(); // captura base64_decode da imagem
$cookieRequest = $search->cookie(); // captura o cookie do request iniciado
$params = $search->params(); // captura o valor dos inputs
$paramBot = $params['parambot']; // captura parambot

表单后的数据

// Requisitar dados
use zServices\Sintegra\Search as Sintegra;

$search = (new Sintegra)->service('SP');
$crawler = $search->data($cnpj, $cookie, $captcha, $paramBot);
$arrayData = $crawler->scraping(); // array com as informações da entidade

圣保罗州Sintegra门户除了captcha外,表单中还有一个名为paramBot的唯一值。该值是每次请求的,不是cookie。因此,为了正确请求,需要获取和返回它作为后续请求的一部分。

$search->params()方法返回一个包含所需返回的输入的数组,在圣保罗州Sintegra的情况下,只是paramBot。此值应添加到您的表单中,并在请求实体信息时作为关联数组返回。

返回结果

示例图片,显示服务返回的信息。

联邦税务局

Retorno

圣保罗州Sintegra

Retorno

开发

想为开发做出贡献? pull request :)

待办事项

许可

MIT

自由软件,太棒了!