diff --git a/gallery_dl/ytdl.py b/gallery_dl/ytdl.py index b4638b75..eb09b9b7 100644 --- a/gallery_dl/ytdl.py +++ b/gallery_dl/ytdl.py @@ -409,9 +409,12 @@ def parse_command_line(module, argv): "postprocessor_args": opts.postprocessor_args, "cn_verification_proxy": opts.cn_verification_proxy, "geo_verification_proxy": opts.geo_verification_proxy, - "geo_bypass": opts.geo_bypass, - "geo_bypass_country": opts.geo_bypass_country, - "geo_bypass_ip_block": opts.geo_bypass_ip_block, + "geo_bypass": getattr( + opts, "geo_bypass", "default"), + "geo_bypass_country": getattr( + opts, "geo_bypass_country", None), + "geo_bypass_ip_block": getattr( + opts, "geo_bypass_ip_block", None), "compat_opts": compat_opts, } diff --git a/test/test_ytdl.py b/test/test_ytdl.py index 7b82a0f8..a28eaeea 100644 --- a/test/test_ytdl.py +++ b/test/test_ytdl.py @@ -269,6 +269,16 @@ class Test_CommandlineArguments_YtDlp(Test_CommandlineArguments): "title:%(artist)s - %(title)s")], }) + def test_geo_bypass(self): + self._("--geo-bypass", + "geo_bypass", "default") + self._("--no-geo-bypass", + "geo_bypass", "never") + self._(["--geo-bypass-country", "EN"], + "geo_bypass", "EN") + self._(["--geo-bypass-ip-block", "198.51.100.14/24"], + "geo_bypass", "198.51.100.14/24") + if __name__ == "__main__": unittest.main(warnings="ignore")