... | ... |
@@ -0,0 +1,99 @@ |
1 |
+#!/bin/bash |
|
2 |
+DEBUG=1 |
|
3 |
+export LANG=en_US |
|
4 |
+ |
|
5 |
+# Temporary Variables |
|
6 |
+TEMPHTML="1fichier.html" |
|
7 |
+if [ 0 -eq $DEBUG ] |
|
8 |
+then |
|
9 |
+ DATE=$(date +%s) |
|
10 |
+ TEMPHTML="1fichier-$DATE.html" |
|
11 |
+fi |
|
12 |
+ |
|
13 |
+function die() |
|
14 |
+{ |
|
15 |
+ RETCODE=$1 |
|
16 |
+ if [ "" == "$1" ] |
|
17 |
+ then |
|
18 |
+ RETCODE=255 |
|
19 |
+ fi |
|
20 |
+ echo " FAILED" |
|
21 |
+ exit $RETCODE |
|
22 |
+} |
|
23 |
+ |
|
24 |
+function progressfilt () |
|
25 |
+{ |
|
26 |
+ local flag=false c count cr=$'\r' nl=$'\n' |
|
27 |
+ while IFS='' read -d '' -rn 1 c |
|
28 |
+ do |
|
29 |
+ if $flag |
|
30 |
+ then |
|
31 |
+ printf '%c' "$c" |
|
32 |
+ else |
|
33 |
+ if [[ $c != $cr && $c != $nl ]] |
|
34 |
+ then |
|
35 |
+ count=0 |
|
36 |
+ else |
|
37 |
+ ((count++)) |
|
38 |
+ if ((count > 1)) |
|
39 |
+ then |
|
40 |
+ flag=true |
|
41 |
+ fi |
|
42 |
+ fi |
|
43 |
+ fi |
|
44 |
+ done |
|
45 |
+} |
|
46 |
+ |
|
47 |
+function clean_temp_files() |
|
48 |
+{ |
|
49 |
+ rm -f $TEMPHTML |
|
50 |
+} |
|
51 |
+ |
|
52 |
+function usage() |
|
53 |
+{ |
|
54 |
+ echo "usage : $(basename $0) <1fichierurl>" |
|
55 |
+} |
|
56 |
+ |
|
57 |
+URL="$1" |
|
58 |
+if [ "" == "$1" ] |
|
59 |
+then |
|
60 |
+ usage |
|
61 |
+ exit 1 |
|
62 |
+fi |
|
63 |
+ |
|
64 |
+echo -n "+- Downloading front page $URL" |
|
65 |
+wget -q $URL -O $TEMPHTML && echo " OK" || die 2 |
|
66 |
+FILE_NAME=$(grep -A1 "FileName" $TEMPHTML | tail -1|sed 's/</>/g' |awk -F'>' '{print $3}'|sed 's/ /_/g') |
|
67 |
+if [ "" == "$FILE_NAME" ] |
|
68 |
+then |
|
69 |
+ FILE_NAME=$(grep -A1 "Nom du fichier :" $TEMPHTML | tail -1|sed 's/</>/g' |awk -F'>' '{print $3}'|sed 's/ /_/g') |
|
70 |
+ if [ "" == "$FILE_NAME" ] |
|
71 |
+ then |
|
72 |
+ FILE_NAME=$(grep -A1 'File Name :</td>' $TEMPHTML | tail -1 | awk -F'<' '{print $2}' | awk -F'>' '{print $NF}') |
|
73 |
+ fi |
|
74 |
+fi |
|
75 |
+echo "+- Getting FileName : $FILE_NAME" |
|
76 |
+POST_DATA=" " |
|
77 |
+FILEID=$(echo $URL|awk -F'/' '{print $3}' | awk -F'.' '{print $1}') |
|
78 |
+IS_OK=$(echo $URL|grep '\?'|wc -l) |
|
79 |
+if [ "0" == "$IS_OK" ] |
|
80 |
+then |
|
81 |
+ NEW_URL="https://1fichier.com/?$FILEID" |
|
82 |
+else |
|
83 |
+ NEW_URL=$URL |
|
84 |
+fi |
|
85 |
+echo -n "+- Post : $NEW_URL" |
|
86 |
+HDR_REF="Referer: $NEW_URL" |
|
87 |
+wget -q --header "$HDR_REF" --post-data "" $NEW_URL -O $TEMPHTML && echo " OK" || die 2 |
|
88 |
+ |
|
89 |
+NEW_URL=$(grep 'ok btn-general btn-orange' $TEMPHTML | awk -F'"' '{print $2}') |
|
90 |
+if [ "submit" == "$NEW_URL" ] |
|
91 |
+then |
|
92 |
+ grep -A1 "Vous devez attendre" $TEMPHTML | awk -F'>' '{print $NF}' |
|
93 |
+ grep -A1 "you must wait between" $TEMPHTML | awk -F'>' '{print $NF}' |
|
94 |
+ clean_temp_files |
|
95 |
+ exit 0 |
|
96 |
+fi |
|
97 |
+clean_temp_files |
|
98 |
+echo "+- File : $NEW_URL" |
|
99 |
+wget $NEW_URL --progress=bar:force -O $FILE_NAME 2>&1 | progressfilt |