Zum Hauptinhalt springen
tsecurity.de LIVE
Echtzeit-Radar & Feeds
Alle RSS Feeds
👥 Community & Social
IT Security NachrichtenAb 1.10: Meldepflicht für IT-Vorfälle in Österreich | heise online(22.09.2026 um 23:31 Uhr)
IT Security NachrichtenIT Security News Daily Summary 2026-09-22(22.09.2026 um 23:55 Uhr)
IT Security NachrichtenIT Security News Hourly Summary 2026-09-23 00h : 3 posts(23.09.2026 um 00:00 Uhr)
IT Security NachrichtenRelays Are Masking Chinese Access to Frontier AI Models in the US(22.09.2026 um 23:12 Uhr)
Malware / Trojaner / VirenAttackers Use Wallpaper Engine to Distribute Malware(22.09.2026 um 15:10 Uhr)
IT Security NachrichtenSweden fines Miljödata $183,000 over breach affecting 2.2 million(22.09.2026 um 23:40 Uhr)
IT Security NachrichtenRogue external MFA providers can steal passwords during logins(22.09.2026 um 23:45 Uhr)
IT Security NachrichtenÖsterreich setzt NIS2 um, erhält Bundesamt für Cybersicherheit(22.09.2026 um 23:24 Uhr)
IT NachrichtenHere’s a Newer Galaxy Z Fold 8 Update for You(22.09.2026 um 23:19 Uhr)
IT Security NachrichtenAb 1.10: Meldepflicht für IT-Vorfälle in Österreich | heise online(22.09.2026 um 23:31 Uhr)
IT Security NachrichtenIT Security News Daily Summary 2026-09-22(22.09.2026 um 23:55 Uhr)
IT Security NachrichtenIT Security News Hourly Summary 2026-09-23 00h : 3 posts(23.09.2026 um 00:00 Uhr)
IT Security NachrichtenRelays Are Masking Chinese Access to Frontier AI Models in the US(22.09.2026 um 23:12 Uhr)
Malware / Trojaner / VirenAttackers Use Wallpaper Engine to Distribute Malware(22.09.2026 um 15:10 Uhr)
IT Security NachrichtenSweden fines Miljödata $183,000 over breach affecting 2.2 million(22.09.2026 um 23:40 Uhr)
IT Security NachrichtenRogue external MFA providers can steal passwords during logins(22.09.2026 um 23:45 Uhr)
IT Security NachrichtenÖsterreich setzt NIS2 um, erhält Bundesamt für Cybersicherheit(22.09.2026 um 23:24 Uhr)
IT NachrichtenHere’s a Newer Galaxy Z Fold 8 Update for You(22.09.2026 um 23:19 Uhr)
Intelligence View
⚡ tsecurity.de Intelligence

Yandex Search API на стероидах: обзор PHP-библиотеки yandex-search-php

Привет, dev.to! Сегодня мы погрузимся в мир программного доступа к поисковым технологиям Яндекса. Если вы когда-либо хотели интегрировать поиск Яндекса в свое PHP-приложение, создать кастомную поисковую выдачу, анализировать тренды с помощь…

0
↗ Quelle (dev.to)
Reagiere als Erste:r — dein Feedback zählt!

Привет, dev.to! Сегодня мы погрузимся в мир программного доступа к поисковым технологиям Яндекса. Если вы когда-либо хотели интегрировать поиск Яндекса в свое PHP-приложение, создать кастомную поисковую выдачу, анализировать тренды с помощью Wordstat или даже использовать генеративные возможности YandexGPT, то эта статья для вас.



Речь пойдет о библиотеке yandex-search-php, которая представляет собой мощный и удобный SDK для работы с Yandex Search API. Мы разберем, почему стоит использовать именно эту библиотеку, как ее установить и какие возможности она открывает.






Зачем нужен SDK, если есть API?



Yandex Search API — это мощный инструмент, но работа с ним напрямую через HTTP-запросы может быть сопряжена с рядом рутинных задач:




  1. Аутентификация: API требует использования IAM-токенов, которые нужно получать, используя OAuth-токен, и своевременно обновлять. Это лишний слой логики, который приходится реализовывать и поддерживать.

  2. Обработка ответов: API возвращает данные в формате JSON. Для удобной и безопасной работы в коде эти данные нужно преобразовывать в объекты (DTO), что требует написания дополнительного кода.

  3. Интеграция с фреймворками: При использовании фреймворков, таких как Laravel, хочется иметь готовую интеграцию: сервис-провайдеры, фасады, автоматическое внедрение зависимостей.



Библиотека yandex-search-php элегантно решает все эти проблемы, предоставляя разработчику чистый и интуитивно понятный интерфейс для взаимодействия с API.






Ключевые возможности yandex-search-php



Пакет предоставляет доступ ко всем основным функциям Yandex Search API:




  • Классический веб-поиск: Полнотекстовый поиск по интернету с возможностью тонкой настройки (сортировка, группировка, фильтрация, регион).

  • Генеративный поиск (YandexGPT): Возможность задавать вопросы и получать осмысленные ответы, сгенерированные нейросетью на основе реальных данных из поисковой выдачи.

  • Поиск изображений: Поиск картинок по текстовому описанию и обратный поиск по изображению (по URL или загруженному файлу).

  • Аналитика Wordstat: Программный доступ к данным Яндекс.Вордстат для анализа популярности ключевых слов, их динамики и распределения по регионам.

  • Асинхронные операции: Возможность запускать долгие поисковые запросы и получать результат позже, не блокируя основной процесс.

  • Типобезопасные DTO: Все ответы API типизированы и представлены в виде удобных объектов, что исключает ошибки при работе с данными.

  • Готовая интеграция с Laravel: Пакет "из коробки" поддерживает Laravel 8-12, предоставляя фасад, сервис-провайдер и возможность внедрения зависимостей.






Начало работы






Требования




  • PHP 8.0+

  • Аккаунт в Yandex Cloud с подключенным Search API.

  • OAuth-токен, который можно получить на oauth.yandex.ru.






Установка



Установка производится стандартно через Composer:




composer require tigusigalpa/yandex-search-php









Быстрый старт (Plain PHP)



Для использования в обычном PHP-проекте достаточно всего нескольких строк кода:




<?php

require_once 'vendor/autoload.php';

use Tigusigalpa\YandexCloudClient\YandexCloudClient;
use Tigusigalpa\YandexSearch\YandexSearchClient;

// 1. Создаем клиент Yandex Cloud с вашим OAuth-токеном
$cloudClient = new YandexCloudClient('ВАШ_OAUTH_ТОКЕН');

// 2. Создаем клиент Yandex Search, передавая клиент облака и ID вашего каталога
$searchClient = new YandexSearchClient($cloudClient, 'ВАШ_FOLDER_ID');

// 3. Выполняем поисковый запрос
$results = $searchClient->web()->search('Статья о PHP на dev.to');

echo "Найдено: {$results->found} результатов\n";
foreach ($results->documents as $doc) {
echo "- {$doc->title} ({$doc->url})\n";
}






Как видите, никакой магии с IAM-токенами. Библиотека берет всю работу по аутентификации на себя.






Быстрый старт (Laravel)



В Laravel все еще проще.





  1. Публикуем конфигурационный файл:


    php artisan vendor:publish --tag=yandex-search-config




  2. Добавляем учетные данные в .env:


    YANDEX_OAUTH_TOKEN=ваш_oauth_токен
    YANDEX_FOLDER_ID=ваш_folder_id




  3. Используем фасад или внедрение зависимостей:


    use Tigusigalpa\YandexSearch\Laravel\Facades\YandexSearch;

    // Через фасад
    $results = YandexSearch::web()->search('Лучшие практики Laravel');

    // Или через внедрение зависимости в контроллере
    public function __construct(private \Tigusigalpa\YandexSearch\YandexSearchClient $searchClient)
    {
    // ...
    }

    public function search(string $query)
    {
    $results = $this->searchClient->web()->search($query);
    return view('search_results', compact('results'));
    }








Углубляемся в возможности



Рассмотрим подробнее, как работать с основными модулями библиотеки.






Веб-поиск (web())



Это основной модуль для текстового поиска. Метод search() принимает поисковый запрос и опциональный массив параметров для тонкой настройки.




$results = $searchClient->web()->search('Новости PHP 8.3', [
'sortSpec' => [
'sortMode' => 'SORT_MODE_BY_TIME', // Сортировка по времени
'sortOrder' => 'SORT_ORDER_DESC' // От новых к старым
],
'region' => 225, // Россия
'page' => 0, // Первая страница результатов
]);

// Результат - это объект SearchResultDTO
echo "Найдено (в числовом формате): {$results->found}\n";
echo "Найдено (в читаемом формате): {$results->foundHuman}\n";

// $results->documents - это коллекция объектов SearchDocumentDTO
foreach ($results->documents as $doc) {
echo "\nЗаголовок: {$doc->title}\n";
echo "URL: {$doc->url}\n";
echo "Домен: {$doc->domain}\n";
echo "Отрывок: {$doc->passage}\n";
}









Генеративный поиск (gen())



Самая интересная часть — интеграция с YandexGPT. Вы можете задать вопрос и получить связный текстовый ответ, основанный на результатах поиска. Это открывает огромные возможности для создания чат-ботов, ассистентов и систем Q&A.




$response = $searchClient->gen()->search([
['role' => 'ROLE_USER', 'content' => 'В чем ключевые отличия PHP 8.2 от 8.3?']
]);

// Ответ - это объект GenerativeSearchResponseDTO
echo "Ответ ИИ:\n{$response->answer}\n";

echo "\nИсточники, использованные для ответа:\n";
foreach ($response->sources as $source) {
if ($source->used) {
echo "- {$source->title} ({$source->url})\n";
}
}






Библиотека также поддерживает многоходовые диалоги, позволяя создавать более сложные сценарии взаимодействия с ИИ.






Поиск изображений (images())



Модуль позволяет искать картинки по текстовому запросу или выполнять обратный поиск.



Поиск по тексту с фильтрами:




$results = $searchClient->images()->search('закат в горах', [
'imageSpec' => [
'size' => 'IMAGE_SIZE_LARGE', // Только большие изображения
'orientation' => 'IMAGE_ORIENTATION_HORIZONTAL', // Горизонтальные
'color' => 'IMAGE_COLOR_ORANGE' // С преобладанием оранжевого цвета
]
]);

// Результат - объект ImageSearchResultDTO
foreach ($results->images as $image) {
echo "- {$image->url} ({$image->width}x{$image->height})\n";
}






Обратный поиск по URL:




$results = $searchClient->images()->searchByImage([
'url' => 'https://example.com/my-cat.jpg'
]);









Аналитика Wordstat (wordstat())



Программный доступ к Яндекс.Вордстат — мечта любого SEO-специалиста или маркетолога. Библиотека делает эту мечту реальностью.



Получение топа связанных фраз:




$top = $searchClient->wordstat()->getTop('купить слона', [
'regions' => [213] // Москва
]);

foreach ($top->topPhrases as $phrase) {
echo "- {$phrase['phrase']}: {$phrase['count']} запросов\n";
}






Получение динамики популярности запроса:




$dynamics = $searchClient->wordstat()->getDynamics('Laravel');

foreach ($dynamics->dynamics as $period) {
echo "{$period['date']}: {$period['count']} запросов\n";
}









Заключение



Библиотека yandex-search-php — это высококачественный, хорошо документированный и удобный инструмент для любого PHP-разработчика, желающего работать с поисковыми технологиями Яндекса. Она абстрагирует от сложностей аутентификации, предоставляет удобные DTO для работы с результатами и отлично интегрируется с современными фреймворками, такими как Laravel.



Будь то добавление поиска по сайту, создание умного ассистента на базе YandexGPT или автоматизация сбора SEO-метрик, этот SDK станет вашим надежным помощником.






Полезные ссылки



Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Yandex Search API на стероидах: обзор PHP-библиотеки yandex-search-php

Thematisch verwandte Begriffe: Yandex, Search, стероидах, обзор · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Zum Aktualisieren ziehen
ZERO-DAY CVE-2026-62985 | request-filtering-agent is an http(s).Agent implementation that blocks r…
Advisory →
TTS Reader • tsecurity.de Voice
tsecurity.de Icon
tsecurity.de App
Offline-Lesen, Eilmeldungen & 0ms Ladezeit

Installiere tsecurity.de direkt auf deinen Home-Bildschirm für das ultimative Vollbild-Magazinerlebnis ohne Browser-Leisten.

Nächster Beitrag
Themen-Radar & Intelligence Matrix
Echtzeit-Taxonomie nach Angriffsvektoren & Plattformen

tsecurity.de Live Threat Radar

🔴 LIVE RADAR
MONITORING
AKTIV
CVE-DATENBANK
LIVE
🔍
Community Radar & Live Chat
Sentinel Bot online • Live-Stream
Dein Cluster: Security Explorer
Match:
lädt…
Verbindung zum Community-Stream wird aufgebaut...
Bearbeitungsmodus — Senden überschreibt deine Nachricht
Community-Puls — was gerade passiert
lädt…
Aktivitäten deiner Analysten
lädt…
Neues Thema oder Eilmeldung einreichen

Reiche interessante Links, Zero-Days oder Debatten ein. Die Community entscheidet per Upvote über die Veröffentlichung.

Heiß diskutierte Einreichungen
🔖 Gespeicherte Artikel
📂 Keine gespeicherten Artikel vorhanden.
Zurück Ziehen Vor
Links: vorheriger Artikel Rechts: nächster Artikel unten: schließen
News NIS-2 Frühwarnung Tier-1 Intel ⏱️ 3 Min vor 10 Min
Artikeldaten werden geladen...

Zurück: vorheriger Vor: nächster
↗ Original-Quelle
Social Reaktionen Deine Reaktion zählt
Einstufung & Relevanz-Poll 0 Stimmen
In sozialen Netzwerken teilen 1-Klick