Skip to main content

sopel-search

Search plugin for Sopel IRC bots

Installing

Releases are hosted on PyPI, so after installing Sopel, all you need is pip:

$ pip install sopel-search

This plugin is designed for use with Sopel version 8.0+, but may have a higher minimum Python version requirement than Sopel itself due to upstream libraries.

Configuring

The easiest way to configure sopel-search is via Sopel's configuration wizard—simply run sopel-plugins configure search and enter the values for which it prompts you. Available settings are:

  • region: Set this to the primary geographical region of your bot's users, using one of the values from https://duckduckgo.com/params

    Setting this correctly may improve the relevance of both search results and query suggestions using .suggest.

  • safesearch: Controls SafeSearch filtering of .search results; one of 'on', 'moderate', and 'off'.

Using

Two primary functions are available, search and suggest:

  • .search (aliases: .ddg, .g): Perform a text search and return the top result
  • .suggest: Fetch autocomplete suggestions for the stem of a search query

Changelog

1.3.0

  • Migrate DDGS library from 8.x to 9.x (#9)
    • Includes package name change to ddgs; the older duckduckgo_search package is no longer used nor updated.
  • Fixed .suggest and merged it with .gsuggest (#9)

1.2.0

  • Upgrade DDGS library from 6.x to 8.x (#6)
    • This also required raising the minimum Python version to 3.9
  • Update package metadata for PEP 639 (#7)

1.1.0

  • Handle common errors with some amount of grace (#4)
  • Refresh the DDGS client periodically to reduce errors (#5)

1.0.1

Bump DuckDuckGo library minimum version; older releases stopped working.

1.0.0

First release of sopel-search.

This new search plugin apes a lot of behaviors from Sopel's built-in search, with the following notable changes:

  • .bing is no longer available
  • .search is an alias to .ddg, as .g was already
  • Search region and safesearch level are now configurable
  • .suggest uses DuckDuckGo; Google suggestions are still available via the new .gsuggest command (if optional extra dependencies are installed)

Metadata

Release files for sopel-search 1.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sopel-search 1.3.0
File Size Uploaded
sopel_search-1.3.0.tar.gz 5.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sopel-search 1.3.0
File Interpreter ABI Platform
sopel_search-1.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 12.2 kB

Release files / sopel_search-1.3.0.tar.gz

Download URL sopel_search-1.3.0.tar.gz
Size 5.8 kB
Tags Source
SHA-256 checksum
How to use checksums
ca5602929fa92b8dfa0073a88ff99a3903fe8ee53c07dbee35c05ed35286acdd
BLAKE2b-256 checksum
How to use checksums
8f2d5189ff029c9064e73acdd0058e08a8f06836f64a17c809d8c0f242d67dc1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2025.

Transparency log

Release files / sopel_search-1.3.0-py3-none-any.whl

Download URL sopel_search-1.3.0-py3-none-any.whl
Size 6.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1073485ce4591e061c34ac5f8a8403d3c6d96b6de27c9cdaac88e2873ca69cc3
BLAKE2b-256 checksum
How to use checksums
d039045cda56f7cd6339e7b99437f142b7443c26fcd7f70f22dc5883602049ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 8, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.3.0 This release

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page