FIND WHAT is an OSINT (Open Source Intelligence) tool for searching, collecting, and presenting information from the web. It now supports multi-engine search (Google → Bing → Startpage → DuckDuckGo), a results aggregator with de-duplication, optional proxy (including CroxyProxy), custom User-Agent profiles, and robust retry/backoff.
- Multi-engine search: Google, Bing, Startpage (Mozilla/Safari-friendly), DuckDuckGo
- Aggregator with de-duplication: Fills up to
--numresults across engines - Proxy support: Use
--proxy(works with CroxyProxy or any HTTP(S) proxy) - User-Agent profiles:
chrome,firefox,safarivia--ua - Retry + backoff: More resilient to rate limits/network hiccups
- Auto-open: Automatically open results in the browser
- Light webpage extraction: Title + short description
- Save to file: Nicely formatted
.txt - Interactive mode: Pick which links to open
- Colored output: Easier to read in terminal
- Python 3.9+ (Python 3.13 recommended like the example venv)
- Python packages:
pip install argparse requests beautifulsoup4 tqdm colorama
git clone https://github.com/bagaspra16/find-what.git
cd find-what
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r <(printf "requests\nbeautifulsoup4\ntqdm\ncolorama\nargparse\n")python find_what.py "your keywords"- --num : Number of results. Default: 10
- --auto-open: Automatically open each found URL
- --save: Save results to
.txtnamed<query>_YYYYMMDD_HHMMSS.txt - --interactive: Interactive mode to pick links to open
- --timeout : HTTP timeout (seconds). Default: 15
- --retries : Number of retries on failure. Default: 3
- --provider <auto|google|bing|startpage|ddg|multi>: Search provider. Default:
autoauto/multi: aggregate in order Google → Bing → Startpage → DuckDuckGogoogle: force Googlebing: force Bingstartpage: force Startpage (good for Mozilla/Safari-like UA)ddg: force DuckDuckGo HTML
- --proxy : HTTP(S) proxy (e.g.,
http://127.0.0.1:8080). Useful for CroxyProxy - --ua <auto|chrome|firefox|safari>: User-Agent profile to use. Default:
auto(=chrome) - --insecure: Disable SSL verification for search requests (not recommended; only for SSL inspection environments)
python find_what.py "osint framework" --num 20 --save --provider multipython find_what.py "latest cybersecurity trends" --num 5 --auto-open --provider multipython find_what.py "deep web search techniques" --interactivepython find_what.py "threat intel feeds" --timeout 30 --retries 4python find_what.py "osint email enumeration" --provider ddg --num 10
python find_what.py "breach news" --provider bing --num 10
python find_what.py "advanced recon" --provider startpage --num 10 --ua safaripython find_what.py "bug bounty recon" --provider multi --proxy http://127.0.0.1:8080python find_what.py "cve-2024 poc" --ua firefoxpython find_what.py "supply chain compromise" --provider ddg --insecure --timeout 20 --retries 2- Auto/multi provider: iterates Google → Bing → Startpage → DuckDuckGo until
--numresults collected, with de-duplication - Retry + backoff: retries failures with exponential delays
- Timeout: prevents hangs on slow networks or unresponsive servers
- Results include number, title, URL, and short description
--savewrites to<query_sanitized>_YYYYMMDD_HHMMSS.txtin the current directory
- Avoid excessive frequency to reduce rate-limits (e.g., Google 429)
- Try --provider ddg when Google denies requests
- Increase --timeout on slow networks and --retries on unstable connections
- Avoid --insecure unless your environment enforces SSL inspection
- 429 Too Many Requests (Google):
- Re-run with
--provider ddgor--provider multi - Reduce
--num, increase--timeout, raise--retries
- Re-run with
- SSL: CERTIFICATE_VERIFY_FAILED:
- Try
--provider ddg(endpoint:https://html.duckduckgo.com/html/) - If your network performs SSL inspection, use
--proxyand, if necessary,--insecure(security risk)
- Try
- Empty results:
- Adjust keywords (be more specific) or increase
--num - Use
--provider multito leverage more engines
- Adjust keywords (be more specific) or increase
- Too many tabs:
- Remove
--auto-openor reduce--num
- Remove
- SERP HTML may change over time; selectors include fallbacks, but scraping can break. Use
--provider multior switch engines if needed - Respect websites' terms of service. Be mindful of load
Created by bagaspra16 — contact: bagaspratamajunianika72@gmail.com