Add gelink.sh
parent
d4afac4566
commit
12d6bea0e3
|
@ -0,0 +1,43 @@
|
|||
#!/bin/bash
|
||||
RDR_AUTH=$(cat ./conf/auth.token);
|
||||
err="";
|
||||
|
||||
if [ -z $1 ]; then
|
||||
pid=$(cat pid);
|
||||
else
|
||||
pid="$1"; # Allows for an argument to be passed to this script, i.e. a custom post ID
|
||||
fi
|
||||
|
||||
# Stores the result of the curl GET into a file (only use for this was to find out I've reached API limit)
|
||||
# curl "https://rdrama.net/post/$pid" -X GET -H "$RDR_AUTH" --SILENT | jq > debug.json
|
||||
|
||||
get=$(curl "https://rdrama.net/post/$pid" \
|
||||
-X GET \
|
||||
-H "$RDR_AUTH" \
|
||||
--SILENT | jq \
|
||||
| grep '"url":\|"code":' \
|
||||
);
|
||||
|
||||
get_code=$(echo "$get" | grep '"code":' | tr -d ', ' | cut -d ':' -f2);
|
||||
get_url=$(echo "$get" | grep '"url":' | cut -d'"' -f4);
|
||||
|
||||
|
||||
if [ -n "$get_code" ]; then
|
||||
if [ "$get_code" = '403' ]; then err="noauth";
|
||||
elif [ "$get_code" = '404' ]; then err="finish";
|
||||
elif [ "$get_code" = '429' ]; then err="rlimit";
|
||||
else err="erridk"; fi;
|
||||
else get="$get_url"
|
||||
if [ -z "$get" ]; then err="nolink"; else get=$(echo "$get" | grep 'reddit.com');
|
||||
if [ -z "$get" ]; then err="notrdt"; else get=$(echo "$get" | grep -e 'https://reddit\.com.*/s/'); # Final check for URL regex
|
||||
if [ -z "$get" ]; then err="notrds"; fi; fi; fi;
|
||||
fi;
|
||||
|
||||
if [ -n "$err" ]; then echo "error $err";
|
||||
else
|
||||
get=$(./linkloc.sh "${get}"); # If url pattern is matched, pass it to the script that gets the real link
|
||||
echo "$get"
|
||||
fi
|
||||
|
||||
sleep 90
|
||||
# Pauses script for 90 seconds to stay within API rate limits
|
Loading…
Reference in New Issue