From 6898697b69a0ae6f559c67434772f9925e55cae8 Mon Sep 17 00:00:00 2001 From: Lev Rusanov <30170278+JDM170@users.noreply.github.com> Date: Sun, 9 Jul 2023 22:29:17 +0700 Subject: [PATCH] implemented finding actual APK link (not BUNDLE) Signed-off-by: Lev Rusanov <30170278+JDM170@users.noreply.github.com> --- Build.ps1 | 26 +++++++++++++++++++++++--- Scripts/YouTube.ps1 | 24 +++++++++++++++++++++++- 2 files changed, 46 insertions(+), 4 deletions(-) diff --git a/Build.ps1 b/Build.ps1 index 447faa0..7e1ba3c 100644 --- a/Build.ps1 +++ b/Build.ps1 @@ -39,8 +39,28 @@ $LatestSupported = $LatestSupported.replace(".", "-") # Get unique key to generate direct link # https://www.apkmirror.com/apk/google-inc/youtube/ -# $apkMirrorLink = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-2-android-apk-download/" -$apkMirrorLink = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-android-apk-download/" +$apkMirrorLink = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/" +$Parameters = @{ + Uri = $apkMirrorLink + UseBasicParsing = $false # Disabled + Verbose = $true +} +$Request = Invoke-Webrequest @Parameters +# Trying to find correct APK link (not BUNDLE) +$nameProp = $Request.ParsedHtml.getElementsByClassName("table-row headerFont") +foreach ($element in $nameProp) +{ + foreach ($child in $element.children) + { + if ($child.innerText -eq "nodpi") + { + $apkPackageLink = ($element.getElementsByTagName("a") | Select-Object -First 1).nameProp + break + } + } +} +$apkMirrorLink += $apkPackageLink # actual APK link (not BUNDLE) + $Parameters = @{ Uri = $apkMirrorLink UseBasicParsing = $false # Disabled @@ -50,7 +70,7 @@ $Request = Invoke-Webrequest @Parameters $nameProp = $Request.ParsedHtml.getElementsByClassName("accent_bg btn btn-flat downloadButton") | ForEach-Object -Process {$_.nameProp} $Parameters = @{ - Uri = $apkMirrorLink + "download/$($nameProp)" + Uri = $apkMirrorLink + "/download/$($nameProp)" UseBasicParsing = $false # Disabled Verbose = $true } diff --git a/Scripts/YouTube.ps1 b/Scripts/YouTube.ps1 index 44caa60..035035f 100644 --- a/Scripts/YouTube.ps1 +++ b/Scripts/YouTube.ps1 @@ -15,8 +15,30 @@ Add-Type -Path $AngleSharpAssemblyPath # Get unique key to generate direct link # https://www.apkmirror.com/apk/google-inc/youtube/ +$apkMirrorLink = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/" +$Parameters = @{ + Uri = $apkMirrorLink + UseBasicParsing = $false # Disabled + Verbose = $true +} +$Request = Invoke-Webrequest @Parameters +# Trying to find correct APK link (not BUNDLE) +$nameProp = $Request.ParsedHtml.getElementsByClassName("table-row headerFont") +foreach ($element in $nameProp) +{ + foreach ($child in $element.children) + { + if ($child.innerText -eq "nodpi") + { + $apkPackageLink = ($element.getElementsByTagName("a") | Select-Object -First 1).nameProp + break + } + } +} +$apkMirrorLink += $apkPackageLink # actual APK link (not BUNDLE) + # $apkMirrorLink = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-2-android-apk-download/" -$apkMirrorLink = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-android-apk-download/" +# $apkMirrorLink = "https://www.apkmirror.com/apk/google-inc/youtube/youtube-$($LatestSupported)-release/youtube-$($LatestSupported)-android-apk-download/" $Parameters = @{ Uri = $apkMirrorLink UseBasicParsing = $false # Disabled