diff options
| author | 2025-12-20 05:49:11 -0500 | |
|---|---|---|
| committer | 2025-12-20 05:49:11 -0500 | |
| commit | c586ea4b3c871f5696626f9820e8c88a4e78f4a6 (patch) | |
| tree | e6d7bae96282c3d147159f091d451e53bdaa2efe /gallery_dl/extractor/okporn.py | |
| parent | 01a2bf622c31072d1322884584404b9bd59b28cc (diff) | |
| parent | a24ec1647aeac35a63b744ea856011ad6e06be3b (diff) | |
Update upstream source from tag 'upstream/1.31.1'
Update to upstream version '1.31.1'
with Debian dir b5d91c25143175f933b1c69c7e82249cd7e145ab
Diffstat (limited to 'gallery_dl/extractor/okporn.py')
| -rw-r--r-- | gallery_dl/extractor/okporn.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/gallery_dl/extractor/okporn.py b/gallery_dl/extractor/okporn.py new file mode 100644 index 0000000..e03f7cb --- /dev/null +++ b/gallery_dl/extractor/okporn.py @@ -0,0 +1,39 @@ +# -*- coding: utf-8 -*- + +# 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://ok.porn/""" + +from .common import GalleryExtractor +from .. import text + + +class OkpornGalleryExtractor(GalleryExtractor): + """Extractor for image galleries from ok.porn""" + category = "okporn" + root = "https://ok.porn" + pattern = r"(?:https?://)?(?:www\.)?ok\.porn/albums/(\d+)" + example = "https://ok.porn/albums/12345/" + + def __init__(self, match): + url = f"{self.root}/albums/{match[1]}/" + GalleryExtractor.__init__(self, match, url) + + def metadata(self, page): + return { + "gallery_id" : text.parse_int(self.groups[0]), + "title" : text.unescape(text.extr( + page, "h1 class=title>", "</h1>")), + "description": text.unescape(text.extr( + page, 'name="description" content="', '"')), + "tags": text.extr( + page, 'name="keywords" content="', '"').split(", "), + } + + def images(self, page): + return [ + (url, None) + for url in text.extract_iter(page, 'data-original="', '"') + ] |
