dicr / yii2-yandex-xml
API XML-поиска Яндекс для Yii2
1.1.7
2021-02-03 21:22 UTC
Requires
- php: ~7.4 || ~8.0.1
- ext-intl: *
- ext-mbstring: *
- ext-simplexml: *
- dicr/yii2-helper: ~4.0
- dicr/yii2-http: ~2.1
- dicr/yii2-validate: ~2.3
- yiisoft/yii2: ~2.0
Requires (Dev)
- phpunit/phpunit: ~9.5
- roave/security-advisories: dev-master
README
- Документация: https://tech.yandex.ru/xml/
Настройка компонента
$config = [
'components' => [
'yandexXml' => [
'class' => dicr\yandex\xml\YandexXML::class,
'login' => 'ваш_логин',
'apiKey' => 'ваш_ключ_api'
]
]
];
Поиск в Yandex
use dicr\yandex\xml\YandexXML;
/** @var YandexXML $yandexXml получаем компонент */
$yandexXml = Yii::$app->get('yandexXml');
// создаем запрос
$request = $yandexXml->request([
'query' => 'Мой поисковый запрос'
]);
// выводим результаты поиска
foreach ($request->results as $res) {
echo 'Позиция: ' . $res['pos'] . "\n";
echo 'URL: ' . $res['url'] . "\n";
}
Расписание лимитов
use dicr\yandex\xml\YandexXML;
/** @var YandexXML $yandexXml получаем компонент */
$yandexXml = Yii::$app->get('yandexXml');
echo "Расписание лимитов:\n";
foreach ($yandexXml->limitsSchedule as $item) {
echo date('d.m.Y H:i', $item['from']) . ' - ' . date('H:i', $item['to']) . ': ' . $item['count'] . "\n";
}
echo 'Текущий лимит зап./час: ' . $yandexXml->hourLimit . "\n";
echo 'Текущий лимит зап./сек: ' . $yandexXml->rpsLimit . "\n";
echo 'Задержка между запросами, сек: ' . $yandexXml->requestDelay . "\n";