Download the PHP package verusdev/faker-yandex-images without Composer

On this page you can find all versions of the php package verusdev/faker-yandex-images. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package faker-yandex-images

Faker Yandex Images

Провайдер для fakerphp/faker, который заполняет сиды реальными фотографиями из Яндекс.Картинок по поисковой фразе — например, "bmw x5" или "фото автомобиля". Идеально подходит для наполнения CRM/каталогов фотографиями автомобилей, товаров, людей и т.д.

Изображения скачиваются локально в указанную директорию (например, в storage/app/public/...), провайдер возвращает абсолютные пути к файлам.

Установка

Локальная разработка (path-репозиторий)

Если пакет лежит рядом с проектом:

Через GitHub

Использование

Laravel-фабрика

Сидер: 100 автомобилей одной модели, уникальные фото

Результаты поиска кэшируются по фразе на время жизни провайдера: один поиск на Яндекс.Картинках (≈30 фото) → 100 записей получают случайные фото из пула, скачивание происходит только при обращении к каждой записи. Опция unique (включена по умолчанию) гарантирует, что каждый вызов возвращает новое фото: пока пул не исчерпан, повторов не будет; после исчерпания история сбрасывается.

Только URL (без скачивания)

API провайдера

Метод Описание
yandexImage(string $query, array $options = []): string Скачивает 1 случайное фото, возвращает путь к файлу
yandexImages(string $query, int $count = 1, array $options = []): list<string> Скачивает N уникальных фото
yandexImageUrl(string $query, array $options = []): string Возвращает URL без скачивания
yandexImageUrls(string $query, int $count = 1, array $options = []): list<string> Возвращает N уникальных URL

Опции

Опция По умолчанию Описание
directory sys_get_temp_dir()/faker-yandex-images Куда сохранять файлы
prefix slug фразы (например bmw-x5) Префикс имени файла: bmw-x5-a3f2c9.jpg
filename — Полное имя файла (перекрывает prefix)
random true Случайная картинка из выдачи; false — по порядку
unique true Каждый вызов возвращает новое фото: уже выданные не повторяются, пока пул поиска не исчерпан, затем история сбрасывается. false — повторения допустимы
pages 1 Сколько страниц выдачи собрать (по ~30 фото)
perPage 30 Ожидаемое число фото на страницу (Яндекс отдаёт ~30)
imageSize large small / medium / large / wallpaper
imageType null jpg / png / gif — фильтр по формату
minWidth, minHeight 0 Отсев мелких изображений
timeout 25 Таймаут HTTP-запросов (сек)

Как это работает

  1. GET https://yandex.ru/images/search?text=<фраза>&isize=large
  2. Из HTML извлекается JSON-состояние приложения (data-state корневого элемента), декодируются сущности, парсится initialState.serpList.items.entities
  3. Для каждой записи выбирается самый крупный URL с CDN Яндекса (avatars.mds.yandex.net) — они стабильно доступны, в отличие от оригиналов на сайтах-источниках (те часто отдают 403/таймаут)
  4. Файл скачивается, проверяется сигнатура (JPEG/PNG/GIF/WEBP/BMP), расширение берётся из Content-Type

При капче/изменении разметки клиент делает до 3 попыток с повторной загрузкой страницы, затем бросает RuntimeException с понятным сообщением.

Тесты

Лицензия

MIT. Изображения принадлежат их авторам; используйте в тестовых данных и не публикуйте их как собственные. Для production-контента проверяйте лицензии отдельно.


All versions of faker-yandex-images with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
ext-curl Version *
ext-json Version *
fakerphp/faker Version ^1.20
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package verusdev/faker-yandex-images contains the following files

Loading the files please wait ...