* [xasiat] Album extractor
* [xasiat] Tags, categories, Models
* [xasiat] Tests
* update 'album' extractor
- provide 'album_id' metadata
- use redirected 'album_url' value
- update metadata extraction in general
* extend test result data
* add new extractor for leakgallery.com
Added support for downloading photo and video posts from leakgallery.com.
Supports:
* Individual post URLs
* User profile URLs with pagination via AJAX
* Optional type/sort filters (e.g. /Photos/MostRecent)
* Proper file extension handling
* Creator-based folder structure
* Compatibility with --download-archive
Tested locally and functional, but may still need review or improvement.
* [leakgallery] add support
Added leakgallery to extractor module imports so it's recognized and used.
* [leakgallery] update extractor structure
- Refactored using LeakGalleryExtractorBase to remove duplication
- Moved init logic into items() using self.groups
- Replaced re with text.re as per upstream guidance
- Added creator fallback and media deduplication
- Aligned structure with gallery-dl maintainer review tips
* [leakgallery] add support
- Added leakgallery entry to supportedsites.md
- Includes post, user, trending, and most-liked subcategories
* add exported extractor results
* [leakgallery] fix flake8 style issues
Cleaned up code to comply with flake8 rules, especially:
- removed unused imports
- split long lines >79 chars
- ensured newline at EOF
No functional changes made; purely formatting to satisfy CI checks.
* [tests] update extractor results
* [leakgallery] fix flake8 style issues (part 2)
Fix remaining flake8 issues in leakgallery.py:
- Reformat line breaks to avoid W503 (line break before binary operator)
- Wrap long lines to respect E501 (line too long > 79 characters)
- Cleaned up exception logging for better clarity
- Confirmed all flake8 checks now pass successfully
This superseedes the previous commit which partially fixed formatting violations.
* [leakgallery] fix flake8 style issues (part 3)
* [leakgallery] rename extractor classes
* [tests] update extractor results
* [tests] rename extractor results
* [leakgallery] rename extractor classes (part 2)
* [leakgallery] rename example
* update docs/supportedsites
* update test results
and convert line endings to '\n'
* update
- convert line endings to '\n'
- use _pagination method
- fix logging calls
* return more metadata for _pagination() results
* [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>