Skip to main content

sopel-weather

A weather lookup plugin for Sopel IRC bots.

Note: This package was previously published as sopel-modules.weather. Please update your dependencies to use sopel-weather instead.

Installation

pip install sopel-weather

Quick Start

Configure the plugin using:

sopel configure --plugins

Or manually edit ~/.sopel/default.cfg:

[weather]
geocoords_provider = locationiq_us
geocoords_api_key = YOUR_LOCATIONIQ_API_KEY
weather_provider = openmeteo
weather_api_key = dummy

Weather Providers

Provider API Key Required Free Tier UV Index Features
Open-Meteo No (use "dummy") Unlimited No Best for basic weather, no signup needed
Tomorrow.io Yes 500 calls/day Yes Modern API, good accuracy
Pirate Weather Yes 20,000 calls/month Yes Dark Sky replacement
OpenWeatherMap Yes 1,000 calls/day Yes Popular, well-documented

No API key required. Use any string (e.g., "dummy") for the weather_api_key.

[weather]
weather_provider = openmeteo
weather_api_key = dummy

Tomorrow.io

Sign up at https://www.tomorrow.io/ for a free API key.

[weather]
weather_provider = tomorrow
weather_api_key = YOUR_TOMORROW_API_KEY
  • Free tier: 500 API calls/day
  • Includes UV index
  • Modern REST API

Pirate Weather

Sign up at https://pirateweather.net/ for a free API key.

[weather]
weather_provider = pirateweather
weather_api_key = YOUR_PIRATEWEATHER_API_KEY
  • Free tier: 20,000 API calls/month
  • Drop-in Dark Sky API replacement
  • Includes UV index

OpenWeatherMap

Sign up at https://openweathermap.org/ for a free API key.

[weather]
weather_provider = openweathermap
weather_api_key = YOUR_OPENWEATHERMAP_API_KEY
  • Free tier: 1,000 API calls/day
  • Includes UV index

Geocoding Provider

A geocoding provider is required to convert location names (like "Seattle" or "90210") to coordinates.

LocationIQ (Required)

Sign up at https://locationiq.com/ for a free API key.

[weather]
geocoords_provider = locationiq_us
geocoords_api_key = YOUR_LOCATIONIQ_API_KEY

Options:

  • locationiq_us - US-based servers (recommended for North America)
  • locationiq_eu - EU-based servers (recommended for Europe)

Free tier: 5,000 requests/day

Configuration Options

Option Description Default
geocoords_provider Geocoding provider (locationiq_us, locationiq_eu) locationiq_us
geocoords_api_key API key for geocoding provider Required
weather_provider Weather provider (openmeteo, tomorrow, pirateweather, openweathermap) Required
weather_api_key API key for weather provider Required
sunrise_sunset Show sunrise/sunset times False
nick_lookup Allow looking up weather by IRC nickname True

Example Configuration

[weather]
geocoords_provider = locationiq_us
geocoords_api_key = pk.abc123...
weather_provider = tomorrow
weather_api_key = abc123xyz...
sunrise_sunset = True
nick_lookup = True

Commands

Current Weather

.weather              # Uses your saved location
.weather seattle
.weather Seattle, US
.weather 90210

Example output:

Seattle, Washington, US: 12°C (54°F), Partly Cloudy, Humidity: 75%, UV Index: 2, Gentle breeze: 19km/h (12mph) (↑)

Forecast

.forecast             # Uses your saved location
.forecast seattle
.forecast London, UK

Example output:

Seattle, WA, US :: Monday - Partly Cloudy - 12°C (54°F) / 5°C (41°F) :: Tuesday - Rain - 14°C (57°F) / 6°C (43°F) ...

Set Your Location

.setlocation seattle
.setlocation 98101
.setlocation London, UK

Troubleshooting

"Weather API key missing"

Set weather_api_key in your configuration. For Open-Meteo, use any string like "dummy".

"GeoCoords API key missing"

Sign up at https://locationiq.com/ and add your API key to geocoords_api_key.

"Could not geocode location"

  • Check your LocationIQ API key is valid
  • Try a more specific location (e.g., "Seattle, WA" instead of "Seattle")
  • Check LocationIQ rate limits (5,000/day on free tier)

"Error: Invalid API key"

Verify your weather provider API key is correct and active.

UV Index not showing

UV Index is only available with Tomorrow.io, Pirate Weather, and OpenWeatherMap providers.

Requirements

  • Sopel 8.0+
  • Python 3.8+

License

Eiffel Forum License 2

Metadata

Release files for sopel-weather 2.1.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-weather 2.1.0
File Size Uploaded Provenance
sopel_weather-2.1.0.tar.gz 14.5 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for sopel-weather 2.1.0
File Interpreter ABI Platform
sopel_weather-2.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 27.5 kB

Release files / sopel_weather-2.1.0.tar.gz

Download URL sopel_weather-2.1.0.tar.gz
Size 14.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9fc43c9c1a81f969d6e0ef9282ad305c541d8bda5a526db93877fc0b42776250
BLAKE2b-256 checksum
How to use checksums
50132fea5892e736d30ddaf062511642a8f57956fada441f98f8b4fef7da51f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Jan 31, 2026.

Transparency log

Release files / sopel_weather-2.1.0-py3-none-any.whl

Download URL sopel_weather-2.1.0-py3-none-any.whl
Size 13.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9cd91e2dfade3f921c81513ceb248bbc54e8b695ec0d34fddc22fb9ad86824e8
BLAKE2b-256 checksum
How to use checksums
dc1cbcf45d0e7254a4dc17ac721ec135644a5360252b3c008579d90dd88e0b61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Jan 31, 2026.

Transparency log

Security for sopel-weather 2.1.0

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for sopel_weather-2.1.0.tar.gz

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 Jan 31, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

2.1.0 This release

2 release files Full provenance

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