This plugin allows the bot to fetch URLs from messages and to reply with each URL’s title from the HTML content, if possible. You can trigger that with the .title <url> command:
[08:42] Exirel: .title https://sopel.chat [08:42] Sopel: xrl: Sopel - The Python IRC Bot - Sopel | sopel.chat
And if enable_auto_title is enabled, the plugin will react to URLs as if the .title command was used:
[08:42] Exirel: Read the doc at https://sopel.chat/docs [08:42] Sopel: [url] Sopel 8.0.4 documentation | sopel.chat
Install
The recommended way to install this plugin is to use pip:
$ python -m pip install sopel-url
Note that this plugin requires Python 3.8+ and Sopel 8.0+. It won’t work on Python versions that are not supported by the version of Sopel you are using.
Configuration
This plugin defines the [url] section of the configuration file, with the following directives:
enable_auto_title (yes/no): Enable (yes, the default) or disable (no) auto-title.
exclude (list): A list of regular expressions for URLs for which the title should not be shown. For example https?://git\.io/.*
exclusion_char (default !): A character (or string) which, when immediately preceding a URL, will stop the URL’s title from being shown.
shorten_url_length (int, default 0): If greater than 0, the title fetcher will include a TinyURL version of links longer than this many characters.
enable_private_resolution (yes/no): Enable (yes) or disable (no, the default) requests to private and local network IP addresses.
Metadata
Release files for sopel-url 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sopel_url-1.0.0.tar.gz | 15.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sopel_url-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.1 kB
Release files / sopel_url-1.0.0.tar.gz
| Download URL | sopel_url-1.0.0.tar.gz |
|---|---|
| Size | 15.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
098064c3c781a16594d0649106d6aae7853f4057eebe28104860937535805adb
|
|
BLAKE2b-256 checksum How to use checksums |
ba5b9f27658e3e7f7d9cfac738fccd80e49bb7f6a41c238b5d263e4a5602e5d5
|
| 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 Sep 15, 2025.
Transparency logRelease files / sopel_url-1.0.0-py3-none-any.whl
| Download URL | sopel_url-1.0.0-py3-none-any.whl |
|---|---|
| Size | 11.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
399880e9f1cf81f87265de5d93989f44353bfba5027ad0a2608e094957c5f504
|
|
BLAKE2b-256 checksum How to use checksums |
f13caf853577c8119798a1b4e5d9db4cef7ef4a067c8993287f9b3eb813750d1
|
| 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 Sep 15, 2025.
Transparency log