Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/kevin-rs/duckduckgo

🦆 A CLI and library for instant DuckDuckGo searches. (WIP)
https://github.com/kevin-rs/duckduckgo

api clap cli dorks duckduckgo duckduckgo-api rust

Last synced: about 1 month ago
JSON representation

🦆 A CLI and library for instant DuckDuckGo searches. (WIP)

Awesome Lists containing this project

README

        

# 🦆 DuckDuckGo

[![Crates.io](https://img.shields.io/crates/v/duckduckgo.svg)](https://crates.io/crates/duckduckgo)
[![docs](https://docs.rs/duckduckgo/badge.svg)](https://docs.rs/duckduckgo/)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)

```sh
duckduckgo 0.1.2

▓█████▄ █ ██ ▄████▄ ██ ▄█▀▓█████▄ █ ██ ▄████▄ ██ ▄█▀ ▄████ ▒█████
▒██▀ ██▌ ██ ▓██▒▒██▀ ▀█ ██▄█▒ ▒██▀ ██▌ ██ ▓██▒▒██▀ ▀█ ██▄█▒ ██▒ ▀█▒▒██▒ ██▒
░██ █▌▓██ ▒██░▒▓█ ▄ ▓███▄░ ░██ █▌▓██ ▒██░▒▓█ ▄ ▓███▄░ ▒██░▄▄▄░▒██░ ██▒
░▓█▄ ▌▓▓█ ░██░▒▓▓▄ ▄██▒▓██ █▄ ░▓█▄ ▌▓▓█ ░██░▒▓▓▄ ▄██▒▓██ █▄ ░▓█ ██▓▒██ ██░
░▒████▓ ▒▒█████▓ ▒ ▓███▀ ░▒██▒ █▄░▒████▓ ▒▒█████▓ ▒ ▓███▀ ░▒██▒ █▄░▒▓███▀▒░ ████▓▒░
▒▒▓ ▒ ░▒▓▒ ▒ ▒ ░ ░▒ ▒ ░▒ ▒▒ ▓▒ ▒▒▓ ▒ ░▒▓▒ ▒ ▒ ░ ░▒ ▒ ░▒ ▒▒ ▓▒ ░▒ ▒ ░ ▒░▒░▒░
░ ▒ ▒ ░░▒░ ░ ░ ░ ▒ ░ ░▒ ▒░ ░ ▒ ▒ ░░▒░ ░ ░ ░ ▒ ░ ░▒ ▒░ ░ ░ ░ ▒ ▒░
░ ░ ░ ░░░ ░ ░ ░ ░ ░░ ░ ░ ░ ░ ░░░ ░ ░ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ▒
░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
░ ░ ░ ░
Search and advanced search in DuckDuckGo
========================================

Perform searches and advanced searches on DuckDuckGo from the command line.
```

> 🚀 **duckduckgo**: A powerful Rust-based command-line tool for seamless DuckDuckGo searches.

## 📖 Table of Contents

- [Installation](#-installation)
- [Features](#-features)
- [Usage](#-usage)
- [Options](#-options)
- [Contributing](#-contributing)
- [License](#-license)

## 🚀 Installation

To install `duckduckgo`, use the following Cargo command:

```bash
cargo install --locked duckduckgo
```

## ✨ Features

- Perform DuckDuckGo searches with or without operators.
- Customizable user agent, proxy, and cookie support.
- Beautiful ANSI-colored output.

## 🚗 Usage

Learn how to use the duckduckgo and explore its features with the following examples:

### Perform a basic search:

```bash
duckduckgo --query "rust lang"
```

### Use search operators:

```bash
duckduckgo --query "rust lang" --operators "+tutorial"
```

### Enable safe search:

```bash
duckduckgo --query "rust lang" --safe
```

### Set the output format to detailed:

```bash
duckduckgo --query "rust lang" --format
```

### Limit the number of results to 3:

```bash
duckduckgo --query "rust lang" --limit 3
```

### Set user agent:

```bash
duckduckgo --query "rust lang" --user-agent "chrome"
```

Available Browsers/Agents

| Browser/Agent |
|---------------------------|
| firefox |
| chrome |
| edge |
| safari |
| opera |
| ie11 |
| android |
| ios |
| edge_android |
| opera_mini |
| uc_browser |
| blackberry |
| mozilla |
| bingbot |
| yahoo_slurp |
| duckduckgo |
| baiduspider |
| yandexbot |
| ahrefsbot |
| mj12bot |
| semrushbot |
| sogou_spider |
| exabot |
| dotbot |
| facebook |
| pinterest |
| slackbot |
| discord |
| zoom |
| whatsapp |
| applebot |
| flipboard |
| outlook |
| linux_firefox |
| linux_firefox_alternative |
| windows_firefox |
| older_windows_firefox |
| linux_chrome |
| macos_safari |
| android_chrome |
| ios_chrome |
| linux_opera |
| macos_edge |
| windows_edge |
| android_samsung_browser |
| ios_samsung_browser |
| linux_brave |
| windows_brave |
| android_brave |
| ios_brave |
| linux_firefox_new |
| linux_chrome_new |
| macos_safari_new |
| windows_ie_new |
| android_chrome_new |
| ios_chrome_new |
| linux_opera_new |
| macos_edge_new |
| android_samsung_browser_new |
| ios_samsung_browser_new |
| linux_brave_new |
| windows_brave_new |
| android_brave_new |
| ios_brave_new |
| linux_firefox_alternative_new |
| windows_firefox_new |
| linux_chrome_alternative_new |
| macos_safari_alternative_new |
| windows_ie_alternative_new |
| android_chrome_alternative_new |
| ios_chrome_alternative_new |
| linux_opera_alternative_new |
| macos_edge_alternative_new |
| windows_edge_alternative_new |
| android_samsung_browser_alternative_new |
| ios_samsung_browser_alternative_new |
| linux_brave_alternative_new |
| windows_brave_alternative_new |
| android_brave_alternative_new |
| ios_brave_alternative_new |

### Set cookie for subsequent requests:

```bash
duckduckgo --query "rust lang" --cookie
```

### Set proxy:

```bash
duckduckgo --query "rust lang" --proxy "socks5://192.168.1.1:9000"
```

## 🎨 Options

| Option | Default Value | Description |
|--------------------------|---------------|----------------------------------------------------------|
| `--safe` | `false` | Enable safe search. |
| `--proxy` | `""` | Set a proxy for the search (e.g., "socks5://192.168.1.1:9000"). |
| `--user-agent` | `firefox` | Set a custom user agent for the search. |
| `--cookie` | `true` | Set a cookie for the search. |
| `--format` | `false` | Set the output format (`false` for list or `true` for detailed). |
| `--limit` | `10` | Limit the number of results (default is 10). |

## 🤝 Contributing

Contributions and feedback are welcome! If you'd like to contribute, report an issue, or suggest an enhancement, please engage with the project on [GitHub](https://github.com/wiseaidev/duckduckgo).
Your contributions help improve this CLI for the community.

## 📄 License

This project is licensed under the [MIT License](LICENSE).