mirror of
https://github.com/ksyasuda/aniwrapper.git
synced 2024-11-22 03:19:53 -08:00
remove jq as dependency
This commit is contained in:
parent
59ea0c99b6
commit
b07948cee2
51
ani-cli
51
ani-cli
@ -65,11 +65,10 @@ get_dpage_link() {
|
|||||||
ep_no=$2
|
ep_no=$2
|
||||||
|
|
||||||
# credits to fork: https://github.com/Dink4n/ani-cli for the fix
|
# credits to fork: https://github.com/Dink4n/ani-cli for the fix
|
||||||
# dub prefix takes the value "-dub" when dub is needed else is empty
|
anime_page=$(curl -s "$BASE_URL/$anime_id-$ep_no")
|
||||||
anime_page=$(curl -s "$BASE_URL/$anime_id${dub_prefix}-$ep_no")
|
|
||||||
|
|
||||||
if printf '%s' "$anime_page" | grep -q "404"; then
|
if printf '%s' "$anime_page" | grep -q "404"; then
|
||||||
anime_page=$(curl -s "$BASE_URL/$anime_id${dub_prefix}-episode-$ep_no")
|
anime_page=$(curl -s "$BASE_URL/$anime_id-episode-$ep_no")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
printf '%s' "$anime_page" |
|
printf '%s' "$anime_page" |
|
||||||
@ -82,17 +81,19 @@ decrypt_link() {
|
|||||||
ajax_url="https://gogoplay.io/encrypt-ajax.php"
|
ajax_url="https://gogoplay.io/encrypt-ajax.php"
|
||||||
|
|
||||||
#get the id from the url
|
#get the id from the url
|
||||||
video_id=$(printf "$1" | cut -d\? -f2 | cut -d\& -f1 | sed 's/id=//g')
|
video_id=$(echo "$1" | cut -d\? -f2 | cut -d\& -f1 | sed 's/id=//g')
|
||||||
lg "video_id -> $video_id" > /dev/stderr
|
lg "video_id -> $video_id" > /dev/stderr
|
||||||
|
|
||||||
#construct ajax parameters
|
#construct ajax parameters
|
||||||
secret_key='3235373436353338353932393338333936373634363632383739383333323838'
|
secret_key='3235373436353338353932393338333936373634363632383739383333323838'
|
||||||
iv='34323036393133333738303038313335'
|
iv='34323036393133333738303038313335'
|
||||||
ajax=$(printf "$video_id" | openssl enc -aes256 -K "$secret_key" -iv "$iv" -a)
|
ajax=$(echo "$video_id" | openssl enc -aes256 -K "$secret_key" -iv "$iv" -a)
|
||||||
lg "ajax -> $ajax" > /dev/stderr
|
lg "ajax -> $ajax" > /dev/stderr
|
||||||
|
|
||||||
#send the request to the ajax url
|
#send the request to the ajax url
|
||||||
curl -s -H 'x-requested-with:XMLHttpRequest' "$ajax_url" -d "id=$ajax" -d "time=69420691337800813569" | jq -r '.source[].file'
|
curl -s -H 'x-requested-with:XMLHttpRequest' "$ajax_url" -d "id=$ajax" -d "time=69420691337800813569" |
|
||||||
|
sed -e 's/\].*/\]/' -e 's/\\//g' |
|
||||||
|
grep -Eo 'https:\/\/[-a-zA-Z0-9@:%._\+~#=][a-zA-Z0-9][-a-zA-Z0-9@:%_\+.~#?&\/\/=]*'
|
||||||
lg "END: decrypt_link()" > /dev/stderr
|
lg "END: decrypt_link()" > /dev/stderr
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -103,11 +104,13 @@ get_video_quality() {
|
|||||||
best)
|
best)
|
||||||
video_link=$(printf '%s' "$video_links" | head -n 4 | tail -n 1)
|
video_link=$(printf '%s' "$video_links" | head -n 4 | tail -n 1)
|
||||||
;;
|
;;
|
||||||
|
|
||||||
worst)
|
worst)
|
||||||
video_link=$(printf '%s' "$video_links" | head -n 1)
|
video_link=$(printf '%s' "$video_links" | head -n 1)
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
video_link=$(printf '%s' "$video_links" | grep -iE "${quality}" | head -n 1)
|
video_link=$(printf '%s' "$video_links" | grep -i "${quality}" | head -n 1)
|
||||||
if [ -z "$video_link" ]; then
|
if [ -z "$video_link" ]; then
|
||||||
err "Current video quality is not available (defaulting to best quality)"
|
err "Current video quality is not available (defaulting to best quality)"
|
||||||
quality=best
|
quality=best
|
||||||
@ -664,6 +667,10 @@ open_episode() {
|
|||||||
half_ep=0
|
half_ep=0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -z "$video_url" ]; then
|
||||||
|
die "Video URL not found"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ "$is_download" -eq 0 ]; then
|
if [ "$is_download" -eq 0 ]; then
|
||||||
kill "$PID" > /dev/null 2>&1
|
kill "$PID" > /dev/null 2>&1
|
||||||
nohup "$player_fn" --http-header-fields="Referer:$dpage_link" "$video_url" > /dev/null 2>&1 &
|
nohup "$player_fn" --http-header-fields="Referer:$dpage_link" "$video_url" > /dev/null 2>&1 &
|
||||||
@ -681,14 +688,17 @@ open_episode() {
|
|||||||
{
|
{
|
||||||
mkdir -p "$dl_dir" || die "Could not create directory"
|
mkdir -p "$dl_dir" || die "Could not create directory"
|
||||||
if command -v "notify-send" > /dev/null; then
|
if command -v "notify-send" > /dev/null; then
|
||||||
aria2c --referer="$dpage_link" "$video_url" --dir="$dl_dir" -o "$episode.mp4" --download-result=hide &&
|
if aria2c --referer="$dpage_link" "$video_url" --dir="$dl_dir" -o "$episode.mp4" --download-result=hide; then
|
||||||
notify-send -i "$ANIWRAPPER_ICON_PATH" "Download complete for ${anime_id//-/ } - Episode: $episode" ||
|
notify-send -i "$ANIWRAPPER_ICON_PATH" "Download complete for ${anime_id//-/ } - Episode: $episode"
|
||||||
notify-send -i "$MAISAN_ICON_PATH" "Download failed for ${anime_id//-/ } - Episode: $episode. Please retry or check your internet connection"
|
else
|
||||||
|
notify-send -i "$MAISAN_ICON_PATH" "Download failed for ${anime_id//-/ } - Episode: $episode. Please retry or check your internet connection"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if aria2c --referer="$dpage_link" "$video_url" --dir="$dl_dir" -o "$episode.mp4" --download-result=hide; then
|
||||||
|
printf "${c_green}Downloaded complete for %s - Episode: %s${c_reset}\n" "${anime_id//-/ }" "$episode"
|
||||||
else
|
else
|
||||||
aria2c --referer="$dpage_link" "$video_url" --dir="$dl_dir" -o "$episode.mp4" --download-result=hide &&
|
|
||||||
printf "${c_green}Downloaded complete for %s - Episode: %s${c_reset}\n" "${anime_id//-/ }" "$episode" ||
|
|
||||||
printf "${c_red}Download failed for %s - Episode: %s, please retry or check your internet connection${c_reset}\n" "${anime_id//-/ }" "$episode"
|
printf "${c_red}Download failed for %s - Episode: %s, please retry or check your internet connection${c_reset}\n" "${anime_id//-/ }" "$episode"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
@ -733,7 +743,7 @@ parse_args() {
|
|||||||
is_download=0
|
is_download=0
|
||||||
download_dir="."
|
download_dir="."
|
||||||
half_ep=0
|
half_ep=0
|
||||||
while getopts 'hd:Hsvq:c-:f:t:T:CQ:D:' OPT; do
|
while getopts 'hd:Hsvq:cf:t:T:CQ:D:' OPT; do
|
||||||
case "$OPT" in
|
case "$OPT" in
|
||||||
h)
|
h)
|
||||||
help_text
|
help_text
|
||||||
@ -760,17 +770,6 @@ parse_args() {
|
|||||||
c)
|
c)
|
||||||
is_rofi=0
|
is_rofi=0
|
||||||
;;
|
;;
|
||||||
-)
|
|
||||||
case $OPTARG in
|
|
||||||
dub)
|
|
||||||
dub_prefix="-dub"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
help_text
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
f)
|
f)
|
||||||
scrape="file"
|
scrape="file"
|
||||||
play_dir="$OPTARG"
|
play_dir="$OPTARG"
|
||||||
@ -990,6 +989,6 @@ main() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
dep_ch "$player_fn" "curl" "sed" "grep" "sqlite3" "rofi" "git" "aria2c" "jq"
|
dep_ch "$player_fn" "curl" "sed" "grep" "sqlite3" "rofi" "git" "aria2c"
|
||||||
parse_args "$@"
|
parse_args "$@"
|
||||||
main
|
main
|
||||||
|
Loading…
Reference in New Issue
Block a user