Баз данных JAV, которые можно листать, полно. javdatabase.com, JavDB, MissAV – открыл страницу, кликнул по тегу жанра, прокрутил. Чего нет, пока сам не сделаешь, – это базы данных, которую можно запрашивать: слать фильтры из своего приложения и получать назад структурированные результаты. Листать и запрашивать – разные задачи, и второй ни один из этих сайтов не делает.
javinfo делает. Эндпоинт /query принимает поисковый запрос, набор фильтров или и то и другое и возвращает постраничный список совпадений в JSON.
Запрос к базе с фильтрами
Скажем, вам нужны релизы в жанре big-tits длиннее двух часов, сначала новые. Это один запрос:
curl -X POST "https://api.javinfo.dev/query" \ -H "x-javinfo-key: YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{ "filter": { "genre": "Big Tits", "runtimeMin": 120 }, "sort": "release", "num": 10 }'{ "source": "fanza", "count": 10, "results": [ { "id": "118abp00999", "dvdId": "ABP-999", "title": "...", "cover": "https://pics.dmm.co.jp/.../ps.jpg", "releaseDate": "2019-01-04", "extra": { "runtimeMins": 130, "maker": "...", "categories": ["Big Tits"], "actresses": [{ "name": "...", "image": "https://..." }] } } ]}q ищет по коду, названию или актрисе. filter сужает выборку. Можно отправить что-то одно или оба сразу – фильтр без q – это нормальный просмотр каталога.
Фильтры
Каждое поле необязательно; отправляйте только то, что нужно:
genre,actress,maker,series,director,label,actor– совпадение по очевидным метаданнымcensored–"censored"или"uncensored"runtimeMin/runtimeMax– длительность в минутахreleaseAfter/releaseBefore– границы даты в форматеYYYY-MM-DDavailability–"playable","magnets","subtitle"или"single"
Сортируйте через sort (по умолчанию relevance, либо release, update, rating) и листайте через page и num (до 50 на страницу). Не каждый провайдер поддерживает каждый фильтр – диапазоны длительности и даты выхода опираются на missav, availability и rating приходят из javdb, genre/actress/maker шире всего покрыты в fanza/dmm и javdatabase – так что закрепляйте источник через providers, когда фильтр специфичен для провайдера. Значения передаются как есть, поэтому названия жанров – английские на fanza/javdatabase и японские на missav.
От совпадения к полной записи
/query даёт вам список. Когда нужный код найден, /movie возвращает по нему полную нормализованную запись – ту же форму result.*, на которую ложится каждый провайдер, будь то магнет-ссылки JavDB, потоки MissAV или описания и образцы javdatabase. Один независимый от провайдера API метаданных JAV, два эндпоинта: /query – чтобы найти, /movie – чтобы получить.
Зарегистрируйтесь на app.javinfo.dev, получите ключ и передавайте его в заголовке x-javinfo-key (также на RapidAPI). Оплата по факту использования: /query – $0.0002, /movie – $0.0005 за успешный результат, неудачные запросы бесплатны. Новым пользователям – 100+ бесплатных запросов без кредитной карты. Ни скрейпера на хостинге, ни Cloudflare, с которым надо драться, ни схемы, которую надо реверсить. Просто база данных, к которой можно обратиться.