Mike Fährmann
9dbe33b6de
replace old %-formatted and .format(…) strings with f-strings ( #7671 )
...
mostly using flynt
https://github.com/ikamensh/flynt
2025-06-29 17:50:19 +02:00
Mike Fährmann
434bf3b1f3
use 'util.re()' in more places
...
continuation of b5c88b3d3e
2025-06-23 20:31:45 +02:00
Mike Fährmann
e08ec7e083
update copyright notices
2025-06-13 00:03:41 +02:00
Mike Fährmann
811b665e33
remove @staticmethod decorators
...
There might have been a time when calling a static method was faster
than a regular method, but that is no longer the case. According to
micro-benchmarks, it is 70% slower in CPython 3.13 and it also makes
executing the code of a class definition slower.
2025-06-12 22:50:52 +02:00
Mike Fährmann
75b6c8f3d8
re-implement 'category-map' ( #7612 )
2025-06-04 07:57:27 +02:00
Mike Fährmann
99bf92364a
rename 'category-map' to 'config-map' ( #7612 )
2025-06-04 07:57:27 +02:00
Mike Fährmann
783f1c1b11
add 'category-map' option
...
primarily to achieve some form of backwards compatibility for
922c296482
2025-05-30 17:55:49 +02:00
Mike Fährmann
2a5eec953e
move cache/config/update handling before loading extractors
2025-05-30 10:15:58 +02:00
Mike Fährmann
0b99d9e6b9
[util] add "defaultdict" filters-environment
...
allows accessing undefined values without raising an exception,
but preserves other errors like TypeError, AttributeError, etc
2024-11-14 22:47:25 +01:00
Mike Fährmann
4a6e5af28e
[noop] insert noop extractor when loading cookies without URL
...
allows writing --cookies-from-browser results with just
gallery-dl --cookies-from-browser BROWSER --cookies-export DEST
2024-10-28 19:45:32 +01:00
Mike Fährmann
36883e458e
use 'v[0] == "c"' instead of 'v.startswith("c")'
2024-10-15 08:24:06 +02:00
Mike Fährmann
4da3347d18
allow filtering '--list-extractors' results
...
with blacklist/whitelist syntax, e.g.
--list-extractors pixiv
--list-extractors pixiv:user pixiv:work
--list-extractors :search
2024-09-08 09:27:32 +02:00
Mike Fährmann
b46169cfd2
add 'input-files' config option ( #6059 )
2024-08-27 17:21:49 +02:00
Mike Fährmann
8ecd408f53
add '-J/--resolve-json' command-line option ( #5864 )
2024-07-26 20:41:35 +02:00
Mike Fährmann
f7383a56f8
wrap filters/conditionals in a try-except block
...
allows accessing undefined fields without exception or locals().get(…)
but hides mistakes/typos/etc by evaluating to False without feedback
performance loss compared to the previous version without try-except
is negligible (~20ns for me)
2024-07-12 22:51:11 +02:00
Mike Fährmann
b3aded1939
add '--print-traffic'
2024-07-05 21:34:33 +02:00
Mike Fährmann
c9860002ba
[actions] add 'abort' and 'terminate' actions ( #5778 )
2024-06-29 19:20:17 +02:00
Mike Fährmann
3fc2e61818
add '--config-open' and '--config-status' ( #5713 )
...
adapted from 119a25a59cd07781844136ed3d360e7d820b112c
2024-06-13 23:22:56 +02:00
Mike Fährmann
7ba2b209f1
fix exit status of --clear-cache/--list-modules/--list-extractors
...
All three would always cause gallery-dl to exit with status 1,
regardless of error or success.
2024-05-29 02:56:25 +02:00
Mike Fährmann
2e323ef0a2
[update] implement '-U/--update'
...
to auto-update executable files in-place
2024-05-28 02:26:13 +02:00
Mike Fährmann
601f5becc8
[version] add __variant__
...
Specifies origin and OS of executable files.
For example 'stable/windows'.
2024-05-27 21:37:01 +02:00
Mike Fährmann
dc9d83e64b
[output] support 'NO_COLOR' environment variable
2024-05-03 12:25:41 +02:00
Mike Fährmann
bef0bd3b49
add '--no-colors' command-line option
2024-04-20 21:06:59 +02:00
Mike Fährmann
20e2c0042b
[output] enable colors by default
2024-04-20 20:51:20 +02:00
Aidan Harris
a3f580254a
Add warnings flag
...
This commit adds a warnings flag
It can be combined with -q / --quiet to display warnings.
The intent is to provide a silent option that still surfaces
warning and error messages so that they are visible in logs.
2024-04-14 08:55:50 +00:00
Mike Fährmann
b1c175fdd1
allow using an empty string as argument for -D/--directory
2024-01-12 16:39:16 +01:00
Mike Fährmann
75697dfb26
implement -e/--error-file as a logging handler
...
similar to --write-unsupported
2023-12-10 00:06:39 +01:00
Mike Fährmann
042a9da451
add 'output.errorfile' config option
2023-12-08 17:29:54 +01:00
Mike Fährmann
99b76628f7
implement '-e/--error-file' command-line option ( #4732 )
...
copying per-URL options from regular, read-only input files
does currently not work
2023-12-05 20:49:51 +01:00
Mike Fährmann
b714df5a16
disable 'downloader.progress' when using -q/--quiet ( #4810 )
...
it didn't produce any output since output.mode is set to to "null",
but it caused some unnecessary function calls
2023-11-18 01:16:49 +01:00
Mike Fährmann
4700051562
rework and extend input file processing ( #4732 )
...
- add 2 command-line options to modify input file contents
- -I/--input-file-comment
- -x/--input-file-delete
- implement InputManager class
- move code from util.py to __init__.py
(mainly to avoid import cycles)
2023-11-14 20:50:11 +01:00
Mike Fährmann
4cdab8074e
update/fix --list-extractors
2023-09-11 17:32:59 +02:00
Mike Fährmann
92f98e6f5e
'sys.exit' -> 'SystemExit'
2023-08-21 23:46:39 +02:00
Mike Fährmann
410f783a33
implement 'subconfigs' option ( #4440 )
2023-08-21 21:18:40 +02:00
Mike Fährmann
a14b63d941
support selecting a domain for '--cookies-from-browser'
...
for example 'gallery-dl --cookies-from-browser firefox/twitter.com'
2023-05-06 15:09:49 +02:00
Mike Fährmann
a1ca2404f9
add 'globals' instead of overwriting the default ( #3773 )
2023-03-16 18:37:00 +01:00
Mike Fährmann
075c965512
add '--config-create' command-line option
...
(#2333 )
2023-03-01 14:49:40 +01:00
Mike Fährmann
26d06e0bb2
move executable check into util.py
2023-02-28 23:10:23 +01:00
Mike Fährmann
de2f35d068
simplify config.load()
2023-02-28 22:02:15 +01:00
Mike Fährmann
632d5d7745
allow loading config files in TOML format with --config-toml
2023-02-28 21:54:46 +01:00
Mike Fährmann
d788e6c60c
implement 'globals' option
2023-02-28 18:18:55 +01:00
Mike Fährmann
e480a93337
add 'output.stdout', '.stdin', and '.stderr' options
...
(#1621 , #2152 , #2529 )
Allow setting custom input/output encodings and options
without having to rely on Python's defaults.
2023-02-26 14:56:19 +01:00
Mike Fährmann
d4232f3a8b
implement restarting an extractor ( #3338 )
2023-02-11 21:06:14 +01:00
Mike Fährmann
c2bc70593e
implement ability to load external extractor classes
...
- -X/--extractors
- extractor.module-sources
2023-01-30 23:10:10 +01:00
Mike Fährmann
f58215705a
add '-O/--postprocessor-option' command-line option ( #3565 )
2023-01-26 14:59:24 +01:00
Mike Fährmann
dfe7b23579
support Firefox containers for --cookies-from-browser ( #3346 )
2022-12-09 19:43:55 +01:00
Mike Fährmann
46d811bac0
add loaded config files to debug output
2022-11-18 17:15:32 +01:00
Mike Fährmann
597b63d922
move git head functionality to function in util.py
2022-11-04 19:49:39 +01:00
Mike Fährmann
b337e51e91
run flake8 on all .py files
2022-10-28 22:22:49 +02:00
Mike Fährmann
e140b85342
reword error text for unsupported URLs
2022-10-28 11:49:20 +02:00