-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
[iwara] Add support #7785
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[iwara] Add support #7785
Conversation
Thank you, but there are so many usage and coding patterns that have proven quite useful throughout gallery-dl's development which are present in many places in its code base, that your code mostly ignores. If you don't mind, I'd like to overhaul your code a bit and deal with all the issues myself. Please don't take it the wrong way. Having a working solution and improving upon it is always a lot nicer and easier than having to start from scratch. |
Thanks for the thoughtful feedback — I completely understand and agree that consistency with established patterns is important. I would've liked to use said patterns and whatnot, but I'm sure — as you would agree to as well — the documentation regarding developing extractors for new sites is not great. I tried to go by example (mostly from I'll try to learn from your adjustments so future contributions can better align with gallery-dl's structure. |
Well... I wanted to work on this this evening but
Guess I'll try my luck tomorrow. edit: Iwara is working again. |
It happened to me once in a while as well. I'll also say this, search and tag extractors take significantly more time (regardless of how much data is in each search/tag) to resolve requests and sometimes they fail with no explanation other than timeout. Since both of them mostly use code from other extractors (video/image), I'd advise you to focus on anything other than those two and iron them out at the end. That's just my two cents.
All good. I like working on gallery-dl. In case of Iwara, I just wanted to have a working extractor for my use case. |
- define endpoints inside methods - implement and use _call() and _pagination() - cache auth tokens
TODO: - update test results - simplify code
and move user data extraction into 'yield_video'
and move user info extraction into 'yield_image()'
perform API calls to get full 'files' list inside the function
remove urllib.parse usage
* get("key", {}) -> get("key") or {} * split("…", 1) -> partition("…") * use f-strings for all patterns
include 'date' in filenames to order them chronologically
- use less generators - make processing individual media items non-fatal
Fixes #2652 and #5840.
Weird hash hack taken from here and
yt-dlp
.