diff --git a/docs/supportedsites.md b/docs/supportedsites.md
index dbaf1997..2672cbec 100644
--- a/docs/supportedsites.md
+++ b/docs/supportedsites.md
@@ -1279,6 +1279,12 @@ Consider all listed sites to potentially be NSFW.
Playlists, Posts, Tag Searches |
|
+
+ | YourLesbians |
+ https://yourlesbians.com/ |
+ Albums |
+ |
+
| Zerochan |
https://www.zerochan.net/ |
diff --git a/gallery_dl/extractor/__init__.py b/gallery_dl/extractor/__init__.py
index 6f2cb69a..ae83e70e 100644
--- a/gallery_dl/extractor/__init__.py
+++ b/gallery_dl/extractor/__init__.py
@@ -243,6 +243,7 @@ modules = [
"xhamster",
"xvideos",
"yiffverse",
+ "yourlesbians",
"zerochan",
"booru",
"moebooru",
diff --git a/gallery_dl/extractor/yourlesbians.py b/gallery_dl/extractor/yourlesbians.py
new file mode 100644
index 00000000..5e14f6e0
--- /dev/null
+++ b/gallery_dl/extractor/yourlesbians.py
@@ -0,0 +1,50 @@
+# -*- coding: utf-8 -*-
+
+# Copyright 2025 Mike Fährmann
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+
+"""Extractors for https://yourlesbians.com/"""
+
+from .common import GalleryExtractor
+from .. import text
+
+BASE_PATTERN = r"(?:https?://)?(?:www\.)?yourlesbians\.com"
+
+
+class YourlesbiansAlbumExtractor(GalleryExtractor):
+ category = "yourlesbians"
+ subcategory = "album"
+ root = "https://yourlesbians.com"
+ directory_fmt = ("{category}", "{title}")
+ filename_fmt = "{num:>03} {filename}.{extension}"
+ archive_fmt = "{title}/{num}"
+ pattern = BASE_PATTERN + r"(/album/([^/?#]+)/?)"
+ example = "https://yourlesbians.com/album/SLUG/"
+
+ def metadata(self, page):
+ extr = text.extract_from(page)
+ data = {
+ "album_url": extr('property="og:url" content="', '"'),
+ "title": text.unescape(extr(
+ 'property="og:title" content="', '"')[:-8].rstrip()),
+ "album_thumbnail": extr('property="og:image" content="', '"'),
+ "description": extr('property="og:description" content="', '"'),
+ "tags": text.split_html(extr('tags-row', ''))[1:],
+ }
+ if data["description"].endswith(", right after."):
+ data["description"] = ""
+ self.album = extr('class="album-inner', "")
+ return data
+
+ def images(self, _):
+ results = []
+ for url in text.extract_iter(self.album, '