Commit Graph

1462 Commits

Author SHA1 Message Date
NecRaul
089f815560 [motherless] Add group support (#7774 #7787)
* [motherless] Add group support
* [motherless] Update old unit tests
* [motherless] Add new unit tests
* [motherless] Update docs
2025-07-14 16:50:07 +02:00
NecRaul
a7ebb835ea [iwara] Add support (#2652 #5840 #7785)
* [iwara] Add initial support
* [iwara] Add search support
* [iwara] Code cleanup
* [iwara] Small fixes and additions
* [iwara] Add tag support
* [iwara] Add mime-type to metadata
* [iwara] Refactor patterns/matching using urllib
* [iwara] Add unit tests
* [iwara] Update docs
* [iwara] Fix linting on older Python versions
* [iwara] update 'IwaraAPI' interface class
    - define endpoints inside methods
    - implement and use _call() and _pagination()
    - cache auth tokens
* [iwara] split and rename 'profile' extractor
    TODO:
    - update test results
    - simplify code
* [iwara] simplify '_user_params()' usage
* [iwara] update 'video' extractor
    and move user data extraction into 'yield_video'
* [iwara] update 'image' extractor
    and move user info extraction into 'yield_image()'
* [iwara] update 'playlist' extractor
* [iwara] update 'search' extractor
* [iwara] update 'tag' extractor
* [iwara] simplify 'yield_image' usage
    perform API calls to get full 'files' list inside the function
* [iwara] add video "image" test
* [iwara] provide 'date' metadata
* [iwara] simplify 'source()'
    remove urllib.parse usage
* [iwara] small optimizations
    * get("key", {}) -> get("key") or {}
    * split("…", 1) -> partition("…")
    * use f-strings for all patterns
* [iwara] add missing 'keyarg=1' to profile() memcache decorator
* [tests/iwara] update results
* [iwara] extract more 'user' metadata
* [iwara] update default format strings
    include 'date' in filenames to order them chronologically
* [iwara] restructure image/video handling
    - use less generators
    - make processing individual media items non-fatal
* [iwara] fix login and token handling
* [iwara] add 'favorite' extractor
* [iwara] add 'following' and 'followers' extractors

---------

Co-authored-by: Mike Fährmann <mike_faehrmann@web.de>
2025-07-13 21:30:25 +02:00
Mike Fährmann
fc968ebf20 [artstation] support downloading '.mview' files (#7812) 2025-07-12 20:53:16 +02:00
Mike Fährmann
2d3b6155eb [erome] restructure extractor hierarchy (#7804) 2025-07-11 22:28:26 +02:00
Mike Fährmann
2ccb9acf1a [pinterest] support 'pin.it' board redirects (#7805) 2025-07-11 22:28:26 +02:00
Mike Fährmann
8e40ea2fe2 [pinterest] match board URLs with query strings (#7805) 2025-07-11 22:28:26 +02:00
Mike Fährmann
321141ba56 merge #7789: [readcomiconline] fix extraction (#7606) 2025-07-07 12:15:16 +02:00
Mike Fährmann
ad84e72fda [civitai] implement retrieving 'post' metadata (#7548) 2025-07-07 11:48:21 +02:00
Mike Fährmann
d25b1f22f3 [civitai] always provide 'file[…]' metadata (#7548)
wrap most top-level values of (single) image results into a 'file' object
2025-07-07 11:45:49 +02:00
Mike Fährmann
1aa8fe7c10 [e621] support 'e621.cc/posts' URLs (#6809)
https://github.com/mikf/gallery-dl/issues/6809#issuecomment-3043180010
2025-07-07 08:44:31 +02:00
enduser420
8c1628ea4e [readcomiconline] fix extraction 2025-07-07 02:32:23 +05:30
Mike Fährmann
1f1a3edd3e [patreon] fix campaign_id extraction from Next.js 13 creator pages (#7773) 2025-07-04 21:41:08 +02:00
Mike Fährmann
82891b4d0c [pixiv] move 'novel' extractors to a 'pixiv-novel' category (#7746)
TODO:
- restore full 'include' functionality
- allow remapping category:subcategory pairs
2025-07-04 20:13:19 +02:00
Mike Fährmann
e7922ababd [naver] change categories (#7746)
- 'naver'        -> 'naver-blog'
- 'chzzk'        -> 'naver-chzzk'
- 'naverwebtoon' -> 'naver-webtoon'
2025-07-02 23:20:40 +02:00
Mike Fährmann
8764f32ea7 [hitomi] fix negative tag searches (#7694) 2025-06-30 18:40:05 +02:00
enduser420
f77e98b57d [chzzk] add 'comment' and 'community' extractors (#7735 #7741)
* [chzzk] add 'comment' and 'community' extractors
* [chzzk] update
* [chzzk] add tests
* [chzzk] update docs/supportedsites
* [chzzk] add 'offset' option
* [docs] add 'offset' option to gallery-dl.conf
2025-06-28 15:27:19 +02:00
Mike Fährmann
8a93616a2d [webtoons] add 'banners' option (#6468) 2025-06-26 19:29:52 +02:00
Mike Fährmann
ebaf789ac7 [tenor] extract more metadata
- format
- id_format
- size
- duration
2025-06-26 10:42:48 +02:00
Mike Fährmann
3084ba1243 [comick] improve 'manga' extraction (#6782)
- extract all chapters
- support query parameters
2025-06-25 14:33:19 +02:00
Mike Fährmann
a50901c460 [comick] give 'w', 'h', and 's' more descriptive names (#6782) 2025-06-25 14:09:11 +02:00
Mike Fährmann
41ae7695c4 [patreon] update code to 3.8 2025-06-25 07:54:55 +02:00
Mike Fährmann
578aea51ed [comick] add initial support (#1825 #6782) 2025-06-24 18:59:50 +02:00
Mike Fährmann
790e097edd [tests:job] update TestDataJob.test_exception result 2025-06-24 18:59:50 +02:00
Mike Fährmann
e7107f160d [fanbox] add 'fee-max' option (#7726) 2025-06-24 14:47:09 +02:00
Mike Fährmann
b43ce6d897 [rule34us] prioritize 'video.rule34.us' for video downloads (#6582)
https://github.com/mikf/gallery-dl/issues/6582#issuecomment-2999111612
2025-06-24 09:36:51 +02:00
Mike Fährmann
c08833aed9 [util] move 're' functions to text.py 2025-06-23 20:05:20 +02:00
Mike Fährmann
fc1ed03484 [dankefuerslesen] fix several issues (#7669)
- return chapters in first-to-last order
- provide 'group' as list of names
- remove hardcoded 'en' and 'English' language results
- replace 'popitem()' with non-destructive 'next(iter(…))'
- 'chapter-minor' -> 'chapter_minor'
2025-06-22 19:52:40 +02:00
Mike Fährmann
ce4d78e8e3 [util] make NONE compare equal to the native None 2025-06-22 19:50:21 +02:00
Mike Fährmann
2bcc2f2a17 [formatter] implement 'M' format specifier
Map a list of objects to a list of values

[
    {"name": "John Doe"      , "age": 42},
    {"name": "Jane Smith"    , "age": 24},
    {"name": "Max Mustermann", "age": null}
]

== :Mname =>

["John Doe", "Jane Smith", "Max Mustermann"]
2025-06-22 16:33:20 +02:00
Mike Fährmann
71461ceaba [formatter] add 'L' conversion
to map ISO 639-1 language codes to their full names
2025-06-22 14:01:58 +02:00
Mike Fährmann
5e0cdac337 [formatter] change 'L'/length conversion to 'n' 2025-06-22 13:54:57 +02:00
Mike Fährmann
68960e29a1 [dankefuerslesen] add support (#7669) 2025-06-22 12:13:12 +02:00
Mike Fährmann
c65b0fb4d8 [tests] remove 'test_unique_pattern_matches' (#7671)
no need to explicitly check for extractor pattern overlaps anymore
since extractor order (and dict insertion order in general) is
preserved since CPython 3.6
2025-06-22 11:37:59 +02:00
Mike Fährmann
9e56d81292 fix Last-Modified mtime overwriting post processor mtime (#7529)
https://github.com/mikf/gallery-dl/issues/7529#issuecomment-2989955455

- split '_mtime' into '_mtime_http' and '_mtime_meta'
- add PathFormat.set_mtime() method
2025-06-20 16:19:37 +02:00
Mike Fährmann
74c9356442 [rule34] fix file downloads (#7697)
replace 'api-cdn' subdomain of image files with 'wimg'
2025-06-20 15:07:10 +02:00
Mike Fährmann
bcfce6b7db [dl:http] improve HTML signature check (#7697)
https://github.com/mikf/gallery-dl/issues/7697#issuecomment-2990734451

ignore leading whitespace
2025-06-20 14:39:32 +02:00
Mike Fährmann
e8d28d3d0d merge #7699: [warosu] handle missing images by checking hostname (#7698) 2025-06-20 13:17:44 +02:00
Mike Fährmann
bb73c8318c [warosu] add test for non-archived post 2025-06-20 12:38:54 +02:00
Mike Fährmann
4279928d0b [gelbooru_v02] extract 'total' / 'search_count' metadata (#7689) 2025-06-19 19:15:27 +02:00
Mike Fährmann
6d7ca4890f [tests] add missing '\n' to stdout.write() output 2025-06-19 11:39:18 +02:00
Mike Fährmann
4f7a0e5d02 [arcalive] fix download URLs (#7678)
https://github.com/danbooru/danbooru/pull/6041
2025-06-18 21:12:18 +02:00
Mike Fährmann
8f79ec67f4 [text] add 'build_query()' 2025-06-18 20:49:12 +02:00
Mike Fährmann
41191bb60a 'match.group(N)' -> 'match[N]' (#7671)
2.5x faster
2025-06-18 13:05:58 +02:00
Mike Fährmann
c73d902e13 [tests/results] include '#comment' in test output 2025-06-17 22:32:08 +02:00
Mike Fährmann
f7b1b6b5c8 [tests] replace 'print' with 'sys.stdout.write' 2025-06-17 22:05:41 +02:00
Mike Fährmann
dd299b3dad [tests/util] add LazyPrompt test 2025-06-17 21:47:21 +02:00
Mike Fährmann
acd5cb0cf0 [tests/util] add HTTPBasicAuth tests 2025-06-17 20:28:16 +02:00
Mike Fährmann
f1343894cb [tests/util] move 'datetime' tests into a separate TestCase class 2025-06-17 20:14:43 +02:00
pocketinternet
3ea244eebb [webtoons] add 'thumbnails' option (#6468 #7441)
* Update webtoons.py
    Added thumbnail download capability which defaults to false
* Update configuration.rst
    Added documentation for webtoon thumbnail option
* extract thumbnails in GalleryExtractor.assets()
* simplify & fix flake8
* include 'type' in default filenames
* add test
* update docs

---------

Co-authored-by: Mike Fährmann <mike_faehrmann@web.de>
2025-06-17 19:34:58 +02:00
Mike Fährmann
6d928f3805 remove some pre-3.8 workarounds (#7671) 2025-06-17 12:56:47 +02:00