1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-11-24 03:32:33 +01:00
Commit Graph

159 Commits

Author SHA1 Message Date
Mike Fährmann
09cc88b715
[deviantart] match '/favourites/all' URLs (closes #555) 2020-01-05 13:59:35 +01:00
Mike Fährmann
ce54b8c04c
let extractors opt-out of cookie option usage
useful to avoid sending unnecessary cookies when all authentication
is done through OAuth tokens
2020-01-01 21:12:37 +01:00
Mike Fährmann
b347bf68c7
[deviantart] add extractor for followed users (#515) 2019-12-27 21:27:39 +01:00
Mike Fährmann
ab17ea9632
[deviantart] only print warning if 'original' is enabled 2019-12-11 21:58:43 +01:00
Mike Fährmann
c8e99e3b3b
[deviantart] fix crash on missing "token" field (#505) 2019-12-07 23:38:36 +01:00
Mike Fährmann
6ed2c7823c
[deviantart] disable original downloads if no cookies set
For 'deviation' and 'scraps' extractors only, since original file
downloads for those two will always fail with a 404 Not Found
when not logged in.
2019-12-07 22:39:30 +01:00
Mike Fährmann
50deab5265
[deviantart] fix URL generation from /extended_fetch results
(closes #505)
2019-12-07 22:07:55 +01:00
Mike Fährmann
359c3bc1c5
[deviantart] revert to getting download URLs from OAuth API
This commit (partially) reverts 27b5b24, 94eb7c6, and a437e78.

Download URLs from the 'extended_fetch' endpoint are now only
usable for logged in users, while those from the respective
OAuth API endpoint are working again. Everything except
scraps and direct deviation links should be fixed, and those
two categories will work with exported cookies. (#488)

TODO:
- "native" login with --username and --password
- better handling of internally stored cookies
2019-11-26 23:29:46 +01:00
Mike Fährmann
d45fabb79d
match user profile handling on deviantart and newgrounds 2019-11-22 23:20:21 +01:00
Mike Fährmann
ea80dadd09
[deviantart] restore archive keys
Commit 9fdc5e7 changed 'username' fields  to have consistent
capitalization, but that invalidated the archive keys of several
extractors where 'username' was usually lowercase.
2019-11-21 17:00:08 +01:00
Mike Fährmann
9fdc5e74cb
[deviantart] ensure consistent username capitalization (#455)
The 'username' field was capitalized in a very inconsistent manner:
Either all lowercase, or as given by the input URL, or with the
"original" capitalization, depending on the extractor used among
other things.

Now usernames use their original capitalization for all extractors.
('UserName' instead of 'username' or 'uSeRnAmE')
2019-11-18 22:09:58 +01:00
Mike Fährmann
dd5d2b2eac
[deviantart] add user profile extractor (#377, #419) 2019-11-07 18:29:49 +01:00
Mike Fährmann
a437e78620
[deviantart] minimize cookie usage during scraps extraction
(#445)
2019-11-05 21:55:13 +01:00
Mike Fährmann
9e3a8607ee
[deviantart] update usernames (#455)
In the case that a user changed his username, requesting deviations
with an old name might cause problems (missing deviations, etc.)

The internal 'username' value therefore now gets updated to the
current username taken from the user profile.
2019-10-24 22:23:16 +02:00
Mike Fährmann
c3042978b8
[deviantart] match "/gallery/all" (closes #449) 2019-10-17 17:54:44 +02:00
Mike Fährmann
df2b3c6888
restore OAuth2 authentication error messages 2019-10-13 22:48:01 +02:00
Mike Fährmann
94eb7c6cad
[deviantart] fix sta.sh extraction (436) 2019-10-10 18:40:15 +02:00
Mike Fährmann
27b5b2497e
[deviantart] fix download URLs (#436)
... except for sta.sh content.

Instead of using the old '/api/v1/oauth2/deviation/download' endpoint,
which started delivering URLs to 404 pages a while ago,
it is also possible to get a download URL from the relatively new
'/_napi/da-browse/shared_api/deviation/extended_fetch' endpoint
used by DeviantArt's Eclipse interface.

The current strategy is therefore:
- Iterate over deviations using the OAuth2 API
- Fetch original download URLs with the new NAPI/Shared API
2019-10-09 20:35:52 +02:00
Mike Fährmann
38d97f3da6
[deviantart] add debug message about API credentials (#424) 2019-09-25 21:20:55 +02:00
Mike Fährmann
80c2104fb5
[deviantart] fix 429 handling if 'fatal' is False (closes #424) 2019-09-25 21:16:35 +02:00
Mike Fährmann
01bc7adadc
[deviantart] improve journal detection (#419)
Some journal-like posts are not reported to be journals (isJournal
is set to False), even though they have a textContent field.

https://www.deviantart.com/gliitchlord/art/brashstrokes-812942668
2019-09-14 22:45:22 +02:00
Mike Fährmann
6e12907de6
[deviantart] improve handling of private deviations (#414)
- don't try to call '/deviation/metadata' with an empty list of
  deviation ids
- print a warning when detecting private deviations without having
  a 'refresh-token'
2019-09-10 16:09:03 +02:00
Mike Fährmann
dedea3b4db
[deviantart] fix journal creation (#400) 2019-08-30 18:50:04 +02:00
Mike Fährmann
efb64ad031
[deviantart] generate filenames (#392, #400) 2019-08-29 10:09:21 +02:00
Mike Fährmann
49f6d7176d
[deviantart] restore filenames (#392)
<title>_by_<user>_<id> --> <title>_by_<user>-<id>
2019-08-23 22:02:03 +02:00
Mike Fährmann
63daa68d67
[deviantart] improvements (#392)
- consistent 'filename' entries, at least as far as possible
  - GIFs and SWFs don't have a <title>_by_<artist>_<id> anywhere in
    their metadata
  - Generating <id> (from 'deviationid'?) might be something that needs
    to be figured out, so we can build those filenames ourselves
- better code structure etc.
- tests for videos, archives, and flash animations
2019-08-23 12:27:19 +02:00
Mike Fährmann
30d6e284b0
[deviantart] use NAPI for artworks and scraps (#392)
TODO:
- journal downloads
- test for all media types
2019-08-21 23:56:06 +02:00
Mike Fährmann
423f68f585
[deviantart] fix scraps extraction (closes #376) 2019-08-11 16:06:15 +02:00
Mike Fährmann
f4bc75e854
fix rate limit handling for OAuth APIs (#368) 2019-08-03 13:43:00 +02:00
Mike Fährmann
3957d27d79
[deviantart] add 'quality' option (#369) 2019-08-03 11:40:35 +02:00
Mike Fährmann
5d968412ca
[deviantart] case-insensitive folder name matching (fixes #343) 2019-07-19 18:05:31 +02:00
Mike Fährmann
fdec59f8e2
replace extractor.request() 'expect' argument
with
- 'fatal': allow 4xx status codes
- 'notfound': raise NotFoundError on 404
2019-07-05 00:42:16 +02:00
Mike Fährmann
7856e5e7dc
]deviantart] "fix" scraps extraction 2019-06-25 18:18:12 +02:00
Mike Fährmann
76ae9957c2
[deviantart] force legacy version for single deviations
Let's see how long this works ...

DeviantArt is rolling out a new version of their website, including a
new internal and potentially usable API (rewrite incoming, yay).

The issue with the new layout is that it doesn't include the "old"
UUIDs for single deviations, i.e. mapping a numeric deviation ID to its
UUID counterpart is impossible with the new layout.
2019-06-20 19:26:15 +02:00
Mike Fährmann
258e8b2060
[deviantart] small code improvements 2019-06-17 19:49:50 +02:00
Mike Fährmann
f5961ac968
[deviantart] download deviations with no 'content' field
Some deviations (possibly only from sta.sh sources) are downloadable
(i.e. 'is_downloadable' is true and /deviation/download/ works), but
have no 'content' or similar  in their JSON representation.

(fixes #307)
2019-06-13 21:14:12 +02:00
Mike Fährmann
e05a96db5e
[deviantart] rename 'stash' to 'extra' (#302)
'stash' is already used as a name for the StashExtractor and therefore
expected to be a dictionary.
2019-06-10 21:05:25 +02:00
Mike Fährmann
c23bf263fe
[deviantart] rename 'external' to 'stash' (#302)
restrict extracted URLs to ones from https://sta.sh/...
2019-06-09 11:16:02 +02:00
Mike Fährmann
2fb85178da
[deviantart] add 'external' option (#302)
If a description is available, this will extract URLs from the
description text and try to find Extractors for them.
2019-06-06 18:53:50 +02:00
Mike Fährmann
f85e42cffc
[deviantart] fix --range for deviation & stash extractor 2019-06-06 18:45:10 +02:00
Mike Fährmann
f1893b2b5b
[deviantart] add 'folders' option (#276) 2019-05-30 17:28:12 +02:00
Mike Fährmann
f837ea98cb
[deviantart] don't call 'extend()' on folders (fixes #271) 2019-05-20 16:24:13 +02:00
Mike Fährmann
51e0e92429
[deviantart] fix GIF downloads (#242)
The "original" download URL for GIF animations is only a preview version
of the original file.
2019-05-08 15:43:43 +02:00
Mike Fährmann
9544683d56
[deviantart] provide 'date' metadata (#232) 2019-04-29 17:30:24 +02:00
Mike Fährmann
d6ddb74cde
update test results
- deviantart: 'index' is now an integer
- flickr: image file with lower quality
- paheal: image server name changed
- rule34: post got deleted
2019-04-12 09:59:48 +02:00
Mike Fährmann
9587aea98f
[deviantart] don't rewrite URLs for newer deviations
The '/intermediary/' trick stopped working for recently posted
deviations, but it still appears to be functional for older ones.
2019-04-11 10:37:01 +02:00
Mike Fährmann
5ec55ec4fc
[deviantart] improve URLs for non-downloadable deviations 2019-03-21 15:37:22 +01:00
Mike Fährmann
c7a6b0ed90
[deviantart] add 'metadata' option (#189) 2019-03-21 14:49:42 +01:00
Mike Fährmann
a2af2d2965
adjust cache maxage values 2019-03-14 22:21:49 +01:00
Mike Fährmann
13e0f2a78f
[deviantart] add 'scraps' extractor (closes #168) 2019-03-01 14:13:34 +01:00