Created
February 2, 2013 15:33
-
-
Save benoitjpnet/4697862 to your computer and use it in GitHub Desktop.
Scriptus was an old script to automatically add into a webiste Japanese OSTs uploaded/released by Nipponsei group.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
#################### | |
#SCRIPTUS # | |
#Version 2.0a # | |
#By Benpro # | |
#[email protected]# | |
#www.benprobox.fr # | |
#Date : 27/07/09 # | |
#################### | |
#VERSION ZIP# | |
#VAR UTILES# | |
workdir="/home/animesost/tools/torrents/downloaded" #A changer | |
ress_readme="/opt/scriptus/readme.txt" #A changer | |
ress_pubmp3="/opt/scriptus/ads.mp3" #A changer | |
dirextraitaudio="/home/animesost/public_html/stream/" #A changer | |
now=$(date +%d/%m/%y) | |
nowdir=$(date +%d-%m-%y) | |
coversdir="/home/animesost/public_html/gallery/pics/" #A changer | |
rename="rename" #prename sur arch, rename sur debian | |
bashmuploader="/usr/bin/bashmuploader" #A changer | |
zipdstdir="/home/animesost/public_html/download/files/" #A changer !! | |
user="" | |
pass="" | |
cookies="tmpscriptus/cookies" | |
#Fonctions# | |
start() { | |
while [ $i -lt $tabmax ] | |
do | |
echo On traite le zip n° $(($i+1)) : ${T_list_zips[i]} | |
file=${T_list_zips[i]} | |
changename | |
echo "unzip de "$file" en cours" | |
decompress | |
echo "Récup des infos,nom ost, auteurs, ..." | |
recupinfos | |
echo "Ajout des contenus supp" | |
addcontent | |
echo "Copie du mp3 01 pour streaming/extrait" | |
cpextrait | |
echo "Ya t'il des images dans l'archive ? (covers)" | |
istherecovers | |
echo "Toujours si il y a des covers => On les renomme {NOM_OST}_{ORIGINAL_NAME}.jpg" | |
renamecovers | |
echo "Si oui => compression/resize des covers pour une qualité Web" | |
resizecovers | |
echo "Déplacement des covers compressé et renommé vers le rép de stockage des covers" | |
mvcovers | |
echo "Compression du zip final" | |
compress | |
echo "Upload sur MegaUpload" | |
uploadmu | |
echo "Coie du zip finale vers le rép de dl." | |
cpdirdl | |
echo "Ajout de la fiche de téléchargements/gallerie/news" | |
addfiche | |
echo "Supression des fichiers temporaires" | |
cd .. | |
rm -rf temp | |
rm -rf "$file" | |
i=$(($i+1)) #On passe au zip suivant | |
done | |
} | |
changename() { | |
#On cherche si le fichier contient [Nipponsei] si oui on renomme | |
new_file=$(echo $file | sed s'/\[Nipponsei\] //') | |
ls "$file" | grep -e '\[Nipponsei\] ' | |
if [ $? -eq 0 ] | |
then | |
mv -v "$file" "$new_file" | |
file=$(echo $new_file) | |
echo "Le fichier comportait [Nipponsei] il a donc été renomée." | |
else | |
echo "Le fichier ne comporte pas [Nipponsei] Il n'as dont pas été renomée." | |
fi | |
} | |
decompress() { | |
unzip -j "$file" -d temp/ | |
cd temp | |
mkdir tmpscriptus covers | |
} | |
recupinfos() { | |
I_titre=0 | |
I_artiste=1 | |
I_date=2 | |
I_jour=0 | |
I_mois=1 | |
I_annee=2 | |
F_pistes="pistes.srciptus" | |
T_infos_ost[$I_titre]="$(cat N*.txt | grep Title | cut -b 8- | tr -d ',;:/\r\n')" | |
T_infos_ost[$I_artiste]="$(cat N*.txt | grep Artist | cut -b 9-)" | |
T_infos_ost[$I_date]="$(cat N*.txt | grep Street | cut -b 22-)" | |
T_date[$I_mois]=$(echo ${T_infos_ost[$I_date]} | awk '{ print $1 }') | |
T_date[$I_jour]=$(echo ${T_infos_ost[$I_date]} | awk '{ print $2 }' | sed s'/,//') | |
T_date[$I_annee]=$(echo ${T_infos_ost[$I_date]} | awk '{ print $3 }') | |
awk '/Tracklist:/ , /---/' N*.txt | sed s'/Tracklist://' > tmpscriptus/$F_pistes #Eventuellement kick les -------? | |
echo Titre: ${T_infos_ost[$I_titre]} | |
#echo Titre url rewrite : ${T_infos_ost[$I_titre]} | sed y'/ /-/' | tr -d '"&[].' | |
#titleurlrewrite=$(${T_infos_ost[$I_titre]} | sed y'/ /-/' | tr -d '"&[].') | |
echo Artiste: ${T_infos_ost[$I_artiste]} | |
echo Date de sortie de l\'OST: ${T_date[$I_jour]} ${T_date[$I_mois]} ${T_date[$I_annee]} | |
echo Date d\'ajout sur AnimesOST: $now | |
echo Pistes: | |
cat tmpscriptus/$F_pistes | |
if [ -z "${T_infos_ost[$I_titre]}" ] | |
then | |
echo "FAILLLLLLLLL!" | |
cd .. | |
fail | |
fi | |
} | |
fail() { | |
#Echec sur ce zip... On passe au suivant | |
# rm -rf temp | |
# i=$(($i+1)) #On passe au zip suivant | |
# start | |
exit | |
} | |
addcontent() { | |
cp $ress_readme ./ | |
cp $ress_pubmp3 ./ | |
} | |
cpextrait() { | |
extraitaudio=$(ls -1 01*.mp3 | head -n 1) | |
cp -v "$extraitaudio" $dirextraitaudio | |
} | |
istherecovers() { | |
ls *.jpg | |
if [ $? -eq 0 ]; then | |
istherecovers="oui" | |
else | |
istherecovers="non" | |
fi | |
} | |
renamecovers() { | |
if [ $istherecovers = "oui" ] | |
then | |
nom_ost_covers=$(echo ${T_infos_ost[$I_titre]} | sed y'/ /_/' | tr -d ',.@!\r') | |
for numbercover in *.jpg | |
do | |
cp -v "$numbercover" covers/"$nom_ost_covers"_"${numbercover#}" | |
done | |
cd covers | |
$rename -v 'y/ /_/' *.jpg #On renomme les espaces en _ | |
pochette=$(ls -l *.jpg | awk '{print $8}' | head -n 1) | |
fi | |
} | |
resizecovers() { | |
if [ $istherecovers = "oui" ] | |
then | |
mogrify -resize 1000x1000 *.jpg | |
fi | |
} | |
mvcovers() { | |
if [ $istherecovers = "oui" ] | |
then | |
mv *.jpg $coversdir | |
cd .. | |
#rm -rf covers | |
fi | |
} | |
compress() { | |
zip "${T_infos_ost[$I_titre]}.zip" -D ./* | |
taillezip=$(du -hs "${T_infos_ost[$I_titre]}.zip" | awk '{print $1}' | sed s'/M//') | |
} | |
uploadmu() { | |
mulink=$($bashmuploader "${T_infos_ost[$I_titre]}.zip" | grep --only-matching http://www.megaupload.com/?d.*) | |
echo le lien mu : $mulink | |
} | |
cpdirdl() { | |
mv -v "${T_infos_ost[$I_titre]}.zip" "$zipdstdir"/"$nowdir" | |
} | |
addfiche() { | |
#Infos nécessaires | |
#Taille | |
#Titre OST | |
#Artiste | |
#Date de sortie | |
#Date sur AOST | |
#Thumbs covers | |
#liens serveur | |
#liens MU | |
#Etapes | |
#Ajout de la catégorie pour les covers | |
#Ajout fiche de téléchargement dans la bonne catégorie (osts) et lettre | |
#News ? Utilisation du flux rss | |
#Auth | |
curlogin=$(curl -# http://animesost.info/news/news.php -d login="$user" -d password="$pass" -d auto=on -d connect=Se+connecter -c $cookies) | |
#Récup token | |
token=$(curl -# http://animesost.info/news/news.php -b $cookies | grep -o "TOKEN = .*" | tr -d '";TOKEN =') | |
if [ $istherecovers = "oui" ] | |
then | |
#Add caterogry | |
curladdcatgal=$(curl -# http://animesost.info/gallery/admin_gallery_cat_add.php?token=$token -b $cookies -d category=1 -d name="${T_infos_ost[$I_titre]}" -d desc="" -d aprob="1" -d status="1" -d groups_auth1[]="r-1" -d groups_auth1[]="r0" -d groups_auth1[]="r1" -d groups_auth1[]="r2" -d login1="" -d groups_auth2[]="r1" -d groups_auth2[]="r2" -d login2="" -d groups_auth4[]="r2" -d login4="" -d add="Ajouter") | |
#id + nom de la cat | |
titreost=$(echo ${T_infos_ost[$I_titre]} | tr -d '\r') | |
idnomcat=$(curl -# http://animesost.info/gallery/admin_gallery_cat.php -b "$cookies" | grep "$titreost" | grep -o href=.* | awk '{ print $1 }' | sed s'/href=//' | tr -d '"') | |
echo catégorie gallery : $idnomcat | |
#Add des covers dans cette categorie | |
fi | |
lettreost=$(echo ${T_infos_ost[$I_titre]} | cut -b 1) | |
if [ $lettreost = "A" ] | |
then | |
catdl="15" | |
fi | |
if [ $lettreost = "B" ] | |
then | |
catdl="16" | |
fi | |
if [ $lettreost = "C" ] | |
then | |
catdl="17" | |
fi | |
if [ $lettreost = "D" ] | |
then | |
catdl="18" | |
fi | |
if [ $lettreost = "E" ] | |
then | |
catdl="19" | |
fi | |
if [ $lettreost = "F" ] | |
then | |
catdl="20" | |
fi | |
if [ $lettreost = "G" ] | |
then | |
catdl="21" | |
fi | |
if [ $lettreost = "H" ] | |
then | |
catdl="22" | |
fi | |
if [ $lettreost = "I" ] | |
then | |
catdl="23" | |
fi | |
if [ $lettreost = "J" ] | |
then | |
catdl="24" | |
fi | |
if [ $lettreost = "K" ] | |
then | |
catdl="25" | |
fi | |
if [ $lettreost = "L" ] | |
then | |
catdl="26" | |
fi | |
if [ $lettreost = "M" ] | |
then | |
catdl="27" | |
fi | |
if [ $lettreost = "N" ] | |
then | |
catdl="28" | |
fi | |
if [ $lettreost = "O" ] | |
then | |
catdl="29" | |
fi | |
if [ $lettreost = "P" ] | |
then | |
catdl="30" | |
fi | |
if [ $lettreost = "Q" ] | |
then | |
catdl="31" | |
fi | |
if [ $lettreost = "R" ] | |
then | |
catdl="32" | |
fi | |
if [ $lettreost = "S" ] | |
then | |
catdl="33" | |
fi | |
if [ $lettreost = "T" ] | |
then | |
catdl="34" | |
fi | |
if [ $lettreost = "U" ] | |
then | |
catdl="35" | |
fi | |
if [ $lettreost = "V" ] | |
then | |
catdl="41" | |
fi | |
if [ $lettreost = "W" ] | |
then | |
catdl="36" | |
fi | |
if [ $lettreost = "X" ] | |
then | |
catdl="37" | |
fi | |
if [ $lettreost = "Y" ] | |
then | |
catdl="38" | |
fi | |
if [ $lettreost = "Z" ] | |
then | |
catdl="39" | |
fi | |
catdl=${catdl:-40} | |
#Generation thumbs | |
curlgenth=$(curl -# http://animesost.info/gallery/admin_gallery_add.php -b $cookies) | |
#Ajout fiche de téléchargement dans la bonne catégorie (osts) et lettre | |
#Création description | |
echo Artiste: ${T_infos_ost[$I_artiste]} >> tmpscriptus/desc | |
echo Date de sortie de l\'OST: ${T_date[$I_jour]} ${T_date[$I_mois]} ${T_date[$I_annee]} >> tmpscriptus/desc | |
echo Date d\'ajout sur AnimesOST: $now >> tmpscriptus/desc | |
echo Pistes: >> tmpscriptus/desc | |
cat tmpscriptus/$F_pistes >> tmpscriptus/desc | |
mp3encoded=$(echo -n "$extraitaudio" | perl -pe's/([^-_.~A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg') | |
echo "[table][row][col][b]Extrait[/b][/col][col][sound]http%3A%2F%2Fstream.animesost.info%2F"$mp3encoded"[/sound][/col][col]"$extraitaudio"[/col][/row][/table]" >> tmpscriptus/desc | |
if [ $istherecovers = "oui" ] | |
then | |
echo "[url=/gallery/"$idnomcat"]Voir les pochettes.[/url]" >> tmpscriptus/desc | |
fi | |
echo "[align=center][url="$mulink"][img]/download/templates/images/download_file_mu.png[/img][/url]" >> tmpscriptus/desc | |
echo "[url="$mulink"]Télécharger sur Megaupload[/url][/align]" >> tmpscriptus/desc | |
#Short desc | |
echo "[table][row][col][b]Extrait[/b][/col][col][sound]http%3A%2F%2Fstream.animesost.info%2F"$mp3encoded"[/sound][/col][col]"$extraitaudio"[/col][/row][/table]" >> tmpscriptus/shortdesc | |
#Add fiche dl | |
if [ $istherecovers = "oui" ] | |
then | |
curladddl=$(curl -# "http://animesost.info/download/management.php?new=1&token="$token"" -b $cookies -d title="${T_infos_ost[$I_titre]}" -d idcat="$catdl" -d url="http://dl.animesost.info/$nowdir/${T_infos_ost[$I_titre]}.zip" -d size="$taillezip" -d count="0" -d download_method="redirect" -d bb_listcontents="3" -d bb_linescontents="2" -d bb_colscontents="2" --data-urlencode contents@tmpscriptus/desc -d bb_listshort_contents="3" -d bb_linesshort_contents="2" -d bb_colsshort_contents="2" --data-urlencode short_contents@tmpscriptus/shortdesc -d image="http://animesost.info/gallery/pics/thumbnails/"$pochette"" -d creation="$now" -d release_date="$now" -d begining_date="$now" -d end_date="$now" -d visibility="1" -d approved="on" -d submit="Ajouter un fichier" -d token=$token) | |
else | |
curladddl=$(curl -# "http://animesost.info/download/management.php?new=1&token="$token"" -b $cookies -d title="${T_infos_ost[$I_titre]}" -d idcat="$catdl" -d url="http://dl.animesost.info/$nowdir/${T_infos_ost[$I_titre]}.zip" -d size="$taillezip" -d count="0" -d download_method="redirect" -d bb_listcontents="3" -d bb_linescontents="2" -d bb_colscontents="2" --data-urlencode contents@tmpscriptus/desc -d bb_listshort_contents="3" -d bb_linesshort_contents="2" -d bb_colsshort_contents="2" --data-urlencode short_contents@tmpscriptus/shortdesc -d image="" -d creation="$now" -d release_date="$now" -d begining_date="$now" -d end_date="$now" -d visibility="1" -d approved="on" -d submit="Ajouter un fichier" -d token=$token) | |
fi | |
} | |
cd $workdir | |
ls *.zip | |
if [ $? -eq 0 ] | |
then | |
echo "On range les zips dans un tableau" | |
j=0 | |
for files in *.zip | |
do | |
T_list_zips[$j]="$files" | |
((j=j+1)) | |
done | |
tabmax=$j | |
i=0 | |
start | |
else | |
echo pas de zip trouvé ... arrêt de scriptus | |
exit | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment