Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so dont bother with any of their useless mail servers here and just use oauth login instead. Thank the nice Russians for causing that. :)

Paste

Pasted as Bash by registered user uwe ( 13 years ago )
#!/bin/bash

pages=39

#tmp
mkdir /tmp/leserservice
cd /tmp/leserservice

# alle
for a in $(seq $pages); do curl -s http://www.leserservice.de/zeitschriften/seite-$a/ | grep '/zeitschriften/[^"]*" name=.*</a>$' | grep -o /zeitschriften/.*htm; done > alle
for z in $(<alle); do u=${z/\/zeitschriften\/}; lynx -dump http://www.leserservice.de/zeitschriften/$u | iconv -f iso-8859-1 > $u; done

# Abo-Count
for i in *.htm; do grep -c abo.*EUR$ $i > $i.count; done

# Auswertung
echo "Zeitschrift;Aboname;Laufzeit;Erscheinungsweise;Preis;Payback;°P Vorteil"
for i in *.htm; do
    zeitschrift="$(grep Abolaufzeiten.*Zeitschrift $i | sed 's/^.*Zeitschrift.//')"
    erscheinungsweise="$(grep Erscheinungsweise $i | cut -d" " -f5-)"
    for c in $(seq $(<$i.count)); do
         ab abo.*EUR$ $i | head -n $c | tail -n 1 | sed 's/^ *//' | cut -d" " -f1)"
        preis="$(grep abo.*EUR$ $i | head -n $c | tail -n 1 | egrep -o '[0-9,]+ EUR' | sed 's/ EUR//')"
        vorteil="$(grep -A 30 ^$aboname $i | egrep '°P' | head -n 1 | egrep -o '[0-9]+')"
        laufzeit="$(grep -A 30 ^$aboname $i | egrep 'Laufzeit' | head -n 1 | egrep -o '[0-9]+')"
        payback="$(grep -A 30 ^$aboname $i | egrep 'PAYBACK Punkte' | grep [0-9]0 | head -n 1 | egrep -o '[0-9.]+')"
        if [ $laufzeit -eq 24 ]; then
            preis="$(echo "scale=2;$preis*2" | tr , . | bc | tr . ,)"
        fi
        echo "$zeitschrift;$aboname;$laufzeit;$erscheinungsweise;$preis;$payback;$vorteil"
    done
done

cd /tmp
rm -r leserservice/

 

Revise this Paste

Parent: 61516
Your Name: Code Language: