teknoraver icon

mannaggia-ng

teknoraver | PRO | 10/25/23 04:01:03 PM UTC (Edited) | 0 ⭐ | 1348 👁️ | Never ⏰ | []
Bash |

1.18 KB

|

None

|

0 👍

/

0 👎

#!/bin/bash
 
# Versione riveduta e corretta di mannaggia.sh
# problemi di mannaggia.sh:
# * scarica solo la prima pagina di ogni lettera dell'alfabeto
# * usa /dev/urandom per scegliere una lettera casuale (LOL!), quando Bash ha il supporto al random
# * inutilmente complesso, il parsing dei tag veniva fatto con CINQUE PIPE, quando basta un solo awk scritto bene
# released under GNU-GPLv3
 
prescegli() {
    letter=$(awk '{printf("%c", $1)}' <<<$((RANDOM % 26 + 65)))
    pages=$(curl -s https://www.santiebeati.it/$letter/ |awk -F'more|\\.html' '/Pagina:/{print $(NF-1);exit}')
    local path=
 
    # Alcune lettere tipo Q e Z hanno una pagina soltanto
    if [ -n "$pages" ]; then
        page=$((RANDOM % pages + 1))
        [ $page -ne 1 ] && path=more$page.html
    fi
 
    santo=$(curl -s "https://www.santiebeati.it/$letter/$path" |awk -F'<FONT SIZE="-2">|</FONT> <FONT SIZE="-1"><b>|</b>' '/<a href="\/dettaglio\/.*<FONT/{print $2,$3}' |iconv -f ISO-8859-1 |shuf -n1)
    prescelto="Mannaggia a $santo"
}
 
while : ; do
    prescegli
    echo $prescelto
    mplayer -nocache -really-quiet -noconsolecontrols "http://translate.google.com/translate_tts?ie=UTF-8&client=tw-ob&q=$prescelto&tl=it" &>/dev/null
    sleep 3
done

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎