dev comment all yandex search
Test Workflow / test (push) Successful in 4s

This commit is contained in:
vladp
2026-03-16 15:46:19 +07:00
parent a1669826b5
commit 18c07b427c
2 changed files with 33 additions and 30 deletions
@@ -56,15 +56,15 @@ public class MonitoringSearchService {
try {
tariffInfoService.writeOffTokens(monitoring.getUserId(), tariffMonitoring.getTokens());
String yandexResponse = searchImageService.searchReverseByPublicUrl(
monitoring.getFile(), "yandex_reverse_image", "visual_matches");
// String yandexResponse = searchImageService.searchReverseByPublicUrl(
// monitoring.getFile(), "yandex_reverse_image", "visual_matches");
List<YandexSearchResponse.ImageResult> yandexImages =
searchImageService.getAllImagesWithoutPagination(yandexResponse, "visual_matches");
for (YandexSearchResponse.ImageResult imageResult : yandexImages) {
violationService.processViolation(imageResult, monitoring.getFile(), null);
}
// List<YandexSearchResponse.ImageResult> yandexImages =
// searchImageService.getAllImagesWithoutPagination(yandexResponse, "visual_matches");
//
// for (YandexSearchResponse.ImageResult imageResult : yandexImages) {
// violationService.processViolation(imageResult, monitoring.getFile(), null);
// }
try {
String googleResponse = searchImageService.searchReverseByPublicUrl(
@@ -85,15 +85,16 @@ public class GlobalSearchAsyncProcessor {
result = globalSearchResultRepository.save(result);
List<YandexSearchResponse.ImageResult> allUniqueImages = new ArrayList<>();
List<YandexSearchResponse.ImageResult> googleImages = new ArrayList<>();
List<YandexSearchResponse.ImageResult> allUniqueImages = new ArrayList<>();
boolean hasTimeout = false;
try {
String searchResponseGoogle = searchImageService.searchReverseByPublicUrl(
file, "google_lens", "exact_matches");
List<YandexSearchResponse.ImageResult> googleImages =
searchImageService.getAllImagesWithoutPagination(searchResponseGoogle, "exact_matches");
googleImages = searchImageService.getAllImagesWithoutPagination(searchResponseGoogle,
"exact_matches");
allUniqueImages.addAll(googleImages);
log.info("Google search OK for file {}", file.getId());
@@ -105,28 +106,30 @@ public class GlobalSearchAsyncProcessor {
log.error("Google search failed for file {}", file.getId(), e);
}
try {
String searchResponseYandex = searchImageService.searchReverseByPublicUrl(
file, "yandex_reverse_image", "visual_matches");
// try {
// String searchResponseYandex = searchImageService.searchReverseByPublicUrl(
// file, "yandex_reverse_image", "visual_matches");
//
// List<YandexSearchResponse.ImageResult> yandexImages =
// searchImageService.getAllImagesWithoutPagination(searchResponseYandex, "visual_matches");
List<YandexSearchResponse.ImageResult> yandexImages =
searchImageService.getAllImagesWithoutPagination(searchResponseYandex, "visual_matches");
// allUniqueImages.addAll(yandexImages);
// log.info("Yandex search OK for file {}", file.getId());
//
// } catch (TimeoutException e) {
// log.warn("Yandex search timeout for file {}", file.getId());
// hasTimeout = true;
// } catch (IOException e) {
// log.error("Yandex search failed for file {}", file.getId(), e);
// }
allUniqueImages.addAll(yandexImages);
log.info("Yandex search OK for file {}", file.getId());
// allUniqueImages = searchImageService.removeDuplicateUrls(
// allUniqueImages.stream()
// .filter(img -> img.getUrl() != null)
// .collect(Collectors.toList()),
// new ArrayList<>());
} catch (TimeoutException e) {
log.warn("Yandex search timeout for file {}", file.getId());
hasTimeout = true;
} catch (IOException e) {
log.error("Yandex search failed for file {}", file.getId(), e);
}
allUniqueImages = searchImageService.removeDuplicateUrls(
allUniqueImages.stream()
.filter(img -> img.getUrl() != null)
.collect(Collectors.toList()),
new ArrayList<>());
allUniqueImages = googleImages;
for (YandexSearchResponse.ImageResult imageResult : allUniqueImages) {
violationService.processViolation(imageResult, file, result);