Написал пакет
A-parser PHP API Client
Cтавится через композер
и позволяет легко работать со всеми методами API, так как каждый метод теперь это соответствующий класс.
Пример кода
Больше примеров есть на странице пакета https://github.com/ResetButton/a-parser-api-php-client
Также большая просьба поставить там звезду
Если есть вопросы или нашли их можно написать тут, но лучше в Issues на странице пакета
A-parser PHP API Client
Cтавится через композер
Код:
composer require reset-button/a-parser-api-php-client
и позволяет легко работать со всеми методами API, так как каждый метод теперь это соответствующий класс.
Пример кода
Код:
use ResetButton\AparserPhpClient\Actions\AddTaskAction;
use ResetButton\AparserPhpClient\Actions\GetTaskStateAction;
use ResetButton\AparserPhpClient\Actions\OneRequestAction;
use ResetButton\AparserPhpClient\Aparser;
use ResetButton\AparserPhpClient\Parser;
//Инициализация апарсера
$aparser = new Aparser('http://a-parser-host:9091/API','password');
//Проверка статуса таска,
$statusAction = new GetTaskStateAction(1);
$result = $aparser->runAction($statusAction);
//Все методы, которые используют парсер, инициализируються с помощью класса Parser
$parser = new Parser("Net::HTTP");
//Классы реализуют паттерн билдер и легко конфигурируются
$parser
->addOverride("useproxy", false)
->addOverride("formatresult", '$code');
//oneRequest
$oneRequestAction = new OneRequestAction($parser, 'https://a-parser.com');
$result = $aparser->runAction($oneRequestAction);
//addTask через парсер
$addTaskActionWithParser = AddTaskAction::withParser($parser, ["https://a-parser.com"])
$addTaskActionWithParser
->setSaveFailedQueries()
->setResultsUnique();
$result = $aparser->runAction($addTaskActionWithParser);
//addTask через сохраненный пресет
$addTaskActionWithPreset = AddTaskAction::withPreset('savedPreset', ["https://a-parser.com"]);
$result = $aparser->runAction($addTaskActionWithPreset);
Больше примеров есть на странице пакета https://github.com/ResetButton/a-parser-api-php-client
Также большая просьба поставить там звезду
Если есть вопросы или нашли их можно написать тут, но лучше в Issues на странице пакета
Последнее редактирование модератором: