# 2024.01.03 - [gofile] Detect "Bulk download is a Premium feature" response (no children)

# 2025.01.02 - [up_axfc] Update PUT response check to handle kanji chars (remove)
# 2025.01.02 - [dashfile] Add response 'This file reached max downloads limit'. New cookie on captcha fail
# 2024.12.28 - [dashfile] Update captcha code check
# 2024.12.28 - [anonfile] Add new download link href response
# 2024.12.28 - [fileblade] Add additional response handling (subsequent downloads, unknown warnings)
# 2024.12.28 - [eternalhosting] Update eternal.onion to handle landing page (eternal.onion/file/)
This commit is contained in:
kittykat 2025-01-04 05:51:50 +00:00
parent e6804e01e1
commit 30eedaf567
Signed by: kittykat
GPG key ID: E3F1556620F70C3C
10 changed files with 766 additions and 687 deletions

53
hosts/dashfile.sh Normal file → Executable file
View file

@ -1,6 +1,6 @@
#! Name: dashfile.sh
#! Author: kittykat
#! Version: 2024.12.25
#! Version: 2025.01.02
#! Desc: Add support for downloading and processing of urls for a new host
#! Usage: Copy this file into the ./${ScriptDir}/hosts/ folder
#!
@ -107,7 +107,7 @@ dash_FetchFileInfo() {
continue
fi
fi
if grep -Eqi 'File Not Found|No such file with this filename|File was deleted|<table id="error_message"' <<< "$response"; then
if grep -Eqi 'No such file with this filename|File was deleted|<table id="error_message"' <<< "$response"; then
rm -f "${dash_cookie_jar}";
printf "\\n"
echo -e "${RED}| The file was not found. It could be deleted or expired.${NC}"
@ -115,6 +115,14 @@ dash_FetchFileInfo() {
removedDownload "${remote_url}"
return 1
fi
if grep -Eqi 'This file reached max downloads limit' <<< "$response"; then
rm -f "${dash_cookie_jar}";
printf "\\n"
echo -e "${RED}| The file has reached max downloads limit${NC}"
exitDownloadError=true
removedDownload "${remote_url}"
return 1
fi
if grep -Eqi 'name="method_free" value="Free Download">' <<< "$response"; then
printf "\\n"
echo -e "${GREEN}| Post link found.${NC}"
@ -194,7 +202,15 @@ dash_FetchFileInfo() {
exitDownloadError=true
removedDownload "${remote_url}"
return 1
fi
fi
if grep -Eqi 'This file reached max downloads limit' <<< "$response"; then
rm -f "${dash_cookie_jar}";
printf "\\n"
echo -e "${RED}| The file has reached max downloads limit${NC}"
exitDownloadError=true
removedDownload "${remote_url}"
return 1
fi
if grep -Eqi 'you have to wait|seconds till next download' <<< "$response"; then
if [ $i == $maxfetchretries ] ; then
rm -f "${dash_cookie_jar}";
@ -220,9 +236,21 @@ dash_FetchFileInfo() {
pval4=$(grep -oP -m 1 '<span style='"'"'position:absolute;padding-left:6[0-9]px;padding-top:[0-9]+px;'"'"'>&#\K.*?(?=;</span>)' <<< "$codeline" )
val1=$((pval1-48)); val2=$((pval2-48)); val3=$((pval3-48)); val4=$((pval4-48))
captcha_code="${val1}${val2}${val3}${val4}"
if grep -Eqi 'name="method_free" value="Free Download">' <<< "$response"; then
if [ -z "$captcha_code" ] || grep -Eqi '-' <<< "$captcha_code"; then
rm -f "${dash_cookie_jar}";
printf "\\n"
echo -e "${RED}| Bad captcha code [2]${NC}"
warnAndRetryUnknownError=true
if [ "${finalAttempt}" == "true" ] ; then
failedRetryDownload "${remote_url}" "Bad captcha code [2]" ""
fi
return 1
else
printf "\\n"
echo -e "${GREEN}| Captcha found.${NC}"
fi
if grep -Eqi 'name="method_free" value="Free Download">' <<< "$response"; then
echo -e "${GREEN}| Post2 found.${NC}"
post_op=$(grep -oP '(?<=input type="hidden" name="op" value=").*(?=">)' <<< "$response")
post_id=$(grep -oP '(?<=input type="hidden" name="id" value=").*(?=">)' <<< "$response")
post_rand=$(grep -oP '(?<=input type="hidden" name="rand" value=").*(?=">)' <<< "$response")
@ -231,7 +259,6 @@ dash_FetchFileInfo() {
else
if [ $i == $maxfetchretries ] ; then
rm -f "${dash_cookie_jar}";
printf "\\n"
echo -e "${RED}| Failed to extract download link [5]${NC}"
warnAndRetryUnknownError=true
if [ "${finalAttempt}" == "true" ] ; then
@ -243,25 +270,9 @@ dash_FetchFileInfo() {
continue
fi
fi
if grep -Eqi '-' <<< "$captcha_code"; then
if [ $i == $maxfetchretries ] ; then
rm -f "${dash_cookie_jar}";
printf "\\n"
echo -e "${RED}| Bad captcha code [2]${NC}"
warnAndRetryUnknownError=true
if [ "${finalAttempt}" == "true" ] ; then
failedRetryDownload "${remote_url}" "Bad captcha code [2]" ""
fi
return 1
else
tor_identity="${RANDOM}"
continue
fi
fi
if [[ -z "$captcha_code" ]] || [[ -z "$post_op" ]] || [[ -z "$post_id" ]] || [[ -z "$post_rand" ]] ; then
if [ $i == $maxfetchretries ] ; then
rm -f "${dash_cookie_jar}";
printf "\\n"
echo -e "${RED}| Failed to extract download link [6]${NC}"
warnAndRetryUnknownError=true
if [ "${finalAttempt}" == "true" ] ; then