aboutsummaryrefslogtreecommitdiff
path: root/src/DownloadUtils.cpp
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2022-03-03 22:48:54 +0100
committerdec05eba <dec05eba@protonmail.com>2022-03-03 22:49:54 +0100
commit8497b3daea44fe26fbc2d089a55e75a219e8d603 (patch)
tree12f53cf43107333c52dedecd83e878e92edcbfdd /src/DownloadUtils.cpp
parent996e5c02ca6f24f54e671a321e5f48f16f59836d (diff)
Fix related videos window not showing for generic media, fix ph related videos always same (anti-curl website)
Diffstat (limited to 'src/DownloadUtils.cpp')
-rw-r--r--src/DownloadUtils.cpp49
1 files changed, 34 insertions, 15 deletions
diff --git a/src/DownloadUtils.cpp b/src/DownloadUtils.cpp
index 584d4a3..a4557d2 100644
--- a/src/DownloadUtils.cpp
+++ b/src/DownloadUtils.cpp
@@ -197,22 +197,41 @@ namespace QuickMedia {
result.clear();
mgl::Clock timer;
std::vector<const char*> args;
- args.insert(args.end(), { "curl", "-H", "Accept-Language: en-US,en;q=0.5", "-H", "Connection: keep-alive", "--compressed", "-g", "-s", "-L" });
- if(fail_on_error)
- args.push_back("-f");
- for(const CommandArg &arg : additional_args) {
- args.push_back(arg.option.c_str());
- if(!arg.value.empty())
- args.push_back(arg.value.c_str());
- }
- if(!cloudflare_bypass && use_browser_useragent) {
- args.push_back("-H");
- args.push_back(useragent_str);
+
+ if(cloudflare_bypass) {
+ args.insert(args.end(), { "wget", "--header", "Accept-Language: en-US,en;q=0.5", "-q", "-O", "-" });
+ // TODO:
+ //if(fail_on_error)
+ // args.push_back("-f");
+ // TODO: May not be compatible
+ for(const CommandArg &arg : additional_args) {
+ args.push_back(arg.option.c_str());
+ if(!arg.value.empty())
+ args.push_back(arg.value.c_str());
+ }
+ if(use_browser_useragent) {
+ args.push_back("--header");
+ args.push_back(useragent_str);
+ }
+ // TODO:
+ //if(headers)
+ // args.push_back("-i");
+ } else {
+ args.insert(args.end(), { "curl", "-H", "Accept-Language: en-US,en;q=0.5", "-H", "Connection: keep-alive", "--compressed", "-g", "-s", "-L" });
+ if(fail_on_error)
+ args.push_back("-f");
+ for(const CommandArg &arg : additional_args) {
+ args.push_back(arg.option.c_str());
+ if(!arg.value.empty())
+ args.push_back(arg.value.c_str());
+ }
+ if(use_browser_useragent) {
+ args.push_back("-H");
+ args.push_back(useragent_str);
+ }
+ if(headers)
+ args.push_back("-i");
}
- if(cloudflare_bypass)
- args.insert(args.end(), { "--tls-max", "1.1", "-A", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; FSL 7.0.6" });
- if(headers)
- args.push_back("-i");
args.push_back("--");
args.push_back(url.c_str());
args.push_back(nullptr);