From 03d94a0441ef17176d28591c0f256877cf0ef183 Mon Sep 17 00:00:00 2001 From: LightZirconite Date: Tue, 4 Nov 2025 21:43:06 +0100 Subject: [PATCH] feat: update configuration and queries for enhanced search capabilities and localization support --- README.md | 10 ++ docs/config-reference.md | 9 +- src/functions/Workers.ts | 5 +- src/functions/queries.json | 282 +++++++++++++++++++++++++++++++++++++ 4 files changed, 300 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 64c782d..3be9c11 100644 --- a/README.md +++ b/README.md @@ -213,6 +213,16 @@ The script works great with default settings, but you can customize everything i ```jsonc { + "search": { + "useLocalQueries": false, // Prioritize Google Trends API (recommended) + "settings": { + "useGeoLocaleQueries": true // Use account country for searches (FR, DE, JP, etc.) + } + }, + "queryDiversity": { + "enabled": true, // Mix multiple search sources + "sources": ["google-trends", "reddit", "local-fallback"] + }, "humanization": { "enabled": true, // Enable natural behavior patterns "stopOnBan": true // Stop on ban detection diff --git a/docs/config-reference.md b/docs/config-reference.md index 07a2156..a019c69 100644 --- a/docs/config-reference.md +++ b/docs/config-reference.md @@ -59,17 +59,20 @@ This page mirrors the defaults that ship in `src/config.jsonc` and explains what | Key | Default | Notes | | --- | --- | --- | -| `search.useLocalQueries` | `true` | Use region-aware query pools. | -| `search.settings.useGeoLocaleQueries` | `true` | Inject account country into generated queries. | +| `search.useLocalQueries` | `false` | **Recommended**: Forces Google Trends as primary source. Local `queries.json` used only as emergency fallback. | +| `search.settings.useGeoLocaleQueries` | `true` | Use account's country for Google Trends API (e.g., FR, DE, JP). Critical for localized queries. | | `search.settings.scrollRandomResults` | `true` | Random scrolls for realism. | | `search.settings.clickRandomResults` | `true` | Occasional safe click-through. | | `search.settings.retryMobileSearchAmount` | `2` | Retries for mobile search failures. | | `search.settings.delay.min/max` | `3min` / `5min` | Delay between searches. | | `queryDiversity.enabled` | `true` | Combine multiple content sources. | -| `queryDiversity.sources` | `["google-trends", "reddit", "local-fallback"]` | Active diversity sources. | +| `queryDiversity.sources` | `["google-trends", "reddit", "local-fallback"]` | **Recommended sources**. `news` requires API key (not included). `wikipedia` can be added optionally. | | `queryDiversity.maxQueriesPerSource` | `10` | Cap per source. | | `queryDiversity.cacheMinutes` | `30` | Cache lifetime in minutes. +> **Priority Order**: Google Trends (country-specific) → Reddit → Wikipedia → Local fallback (`queries.json`) +> **Supported Languages in `queries.json`**: English, French, German, Spanish, Italian, Portuguese, Dutch, Japanese + --- ## Humanization & Vacation diff --git a/src/functions/Workers.ts b/src/functions/Workers.ts index 8667c56..dce02e9 100644 --- a/src/functions/Workers.ts +++ b/src/functions/Workers.ts @@ -236,10 +236,9 @@ export class Workers { private async applyThrottle(throttle: AdaptiveThrottler, min: number, max: number): Promise { const multiplier = throttle.getDelayMultiplier() - const riskMultiplier = this.bot.getRiskDelayMultiplier() await this.bot.utils.waitRandom( - Math.floor(min * multiplier * riskMultiplier), - Math.floor(max * multiplier * riskMultiplier) + Math.floor(min * multiplier), + Math.floor(max * multiplier) ) } diff --git a/src/functions/queries.json b/src/functions/queries.json index 6a8c4d0..04fdd59 100644 --- a/src/functions/queries.json +++ b/src/functions/queries.json @@ -285,5 +285,287 @@ "Augmentation Impots", "Mort célébrité" ] + }, + + { + "title": "Häuser in deiner Nähe", + "queries": [ + "Häuser in meiner Nähe", + "Immobilien Deutschland" + ] + }, + { + "title": "Symptome überprüfen", + "queries": [ + "Ausschlag am Unterarm", + "Verstopfte Nase", + "Trockener Husten" + ] + }, + { + "title": "Schneller einkaufen", + "queries": [ + "PS5 kaufen", + "Xbox kaufen", + "Stuhl Angebote" + ] + }, + { + "title": "Filme anschauen", + "queries": [ + "Alien Film", + "Predator Film", + "Avatar Film" + ] + }, + { + "title": "Wetter überprüfen", + "queries": [ + "Wetter Berlin", + "Wetter München", + "Wetter Hamburg" + ] + }, + { + "title": "Fußball Ergebnisse", + "queries": [ + "Bayern München Ergebnis", + "Bundesliga Tabelle" + ] + }, + + { + "title": "Casas cerca de ti", + "queries": [ + "Casas cerca de mí", + "Inmobiliarias España" + ] + }, + { + "title": "Comprobar síntomas", + "queries": [ + "Erupción en el brazo", + "Nariz tapada", + "Tos seca" + ] + }, + { + "title": "Compras más rápidas", + "queries": [ + "Comprar PS5", + "Comprar Xbox", + "Ofertas sillas" + ] + }, + { + "title": "Ver películas", + "queries": [ + "Película Alien", + "Película Predator", + "Película Avatar" + ] + }, + { + "title": "Consultar el tiempo", + "queries": [ + "Tiempo Madrid", + "Tiempo Barcelona", + "Tiempo Valencia" + ] + }, + { + "title": "Resultados de fútbol", + "queries": [ + "Resultado Real Madrid", + "Clasificación La Liga" + ] + }, + + { + "title": "Case vicino a te", + "queries": [ + "Case vicino a me", + "Immobiliare Italia" + ] + }, + { + "title": "Controlla sintomi", + "queries": [ + "Eruzione cutanea sul braccio", + "Naso chiuso", + "Tosse secca" + ] + }, + { + "title": "Acquisti veloci", + "queries": [ + "Comprare PS5", + "Comprare Xbox", + "Offerte sedie" + ] + }, + { + "title": "Guardare film", + "queries": [ + "Film Alien", + "Film Predator", + "Film Avatar" + ] + }, + { + "title": "Controlla il meteo", + "queries": [ + "Meteo Roma", + "Meteo Milano", + "Meteo Napoli" + ] + }, + { + "title": "Risultati calcio", + "queries": [ + "Risultato Juventus", + "Classifica Serie A" + ] + }, + + { + "title": "Casas perto de você", + "queries": [ + "Casas perto de mim", + "Imobiliárias Brasil" + ] + }, + { + "title": "Verificar sintomas", + "queries": [ + "Erupção no braço", + "Nariz entupido", + "Tosse seca" + ] + }, + { + "title": "Compras rápidas", + "queries": [ + "Comprar PS5", + "Comprar Xbox", + "Ofertas cadeiras" + ] + }, + { + "title": "Assistir filmes", + "queries": [ + "Filme Alien", + "Filme Predador", + "Filme Avatar" + ] + }, + { + "title": "Consultar clima", + "queries": [ + "Clima São Paulo", + "Clima Rio de Janeiro", + "Clima Brasília" + ] + }, + { + "title": "Resultados futebol", + "queries": [ + "Resultado Flamengo", + "Tabela Brasileirão" + ] + }, + + { + "title": "Huizen bij jou in de buurt", + "queries": [ + "Huizen bij mij in de buurt", + "Makelaars Nederland" + ] + }, + { + "title": "Symptomen controleren", + "queries": [ + "Uitslag op onderarm", + "Verstopte neus", + "Droge hoest" + ] + }, + { + "title": "Snel winkelen", + "queries": [ + "PS5 kopen", + "Xbox kopen", + "Stoel aanbiedingen" + ] + }, + { + "title": "Films kijken", + "queries": [ + "Alien film", + "Predator film", + "Avatar film" + ] + }, + { + "title": "Weer controleren", + "queries": [ + "Weer Amsterdam", + "Weer Rotterdam", + "Weer Utrecht" + ] + }, + { + "title": "Voetbal uitslagen", + "queries": [ + "Uitslag Ajax", + "Eredivisie stand" + ] + }, + + { + "title": "近くの家", + "queries": [ + "近くの不動産", + "東京 マンション" + ] + }, + { + "title": "症状を確認", + "queries": [ + "腕の発疹", + "鼻詰まり", + "空咳" + ] + }, + { + "title": "買い物", + "queries": [ + "PS5を買う", + "Xboxを買う", + "椅子セール" + ] + }, + { + "title": "映画を見る", + "queries": [ + "エイリアン 映画", + "プレデター 映画", + "アバター 映画" + ] + }, + { + "title": "天気を確認", + "queries": [ + "東京 天気", + "大阪 天気", + "京都 天気" + ] + }, + { + "title": "サッカー結果", + "queries": [ + "浦和レッズ 結果", + "Jリーグ 順位表" + ] } ]