Guest User

Ibood Box

a guest
Mar 6th, 2013
892
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.71 KB | None | 0 0
  1. #!/bin/bash    
  2.  
  3.  
  4. SUCCESS=false
  5. ITEM='ibood box'
  6. USERNAME=''
  7. PASSWORD=''
  8. BETAALMETHODE='21'
  9.  
  10. # Login and save cookies
  11. wget --save-cookies cookies.txt \
  12.      --keep-session-cookies \
  13.      --no-check-certificate \
  14.      -q \
  15.      --post-data "customer[login]=$USERNAME&customer[password]=$PASSWORD&from=" \
  16.      https://www.ibood.com/be/nl/login/
  17.  
  18. function buyOrder {
  19.  
  20.     SUCCESS=false;
  21.  
  22.     echo "Link: $1"
  23.  
  24.     # Fetch first checkout page (GET)
  25.     wget --load-cookies cookies.txt --save-cookies cookies.txt --keep-session-cookies --no-check-certificate --no-dns-cache -4 \
  26.          -q -O 'checkout1' $1
  27.  
  28.     # Generate Post Data (Account Gegevens)
  29.     POSTDATA="`cat checkout1 | egrep '(<|/)(form|input|select|option)' | ./htmlform2post.py "order" | paste -s | tr -d "\t" | sed "s/\ /\+/g"`"
  30.     echo "First Post Data.. $POSTDATA" > iBood.log
  31.  
  32.     # Submit Customer Details (POST)
  33.     wget --load-cookies cookies.txt --save-cookies cookies.txt --keep-session-cookies --no-check-certificate --no-dns-cache -4 \
  34.          --post-data "$POSTDATA" \
  35.          -q -O 'checkout2' 'https://order.ibood.com/be/nl/order/'
  36.  
  37.     # Generate Post Data (Afleveradres en Betaalmethode)
  38.     POSTDATA="`cat checkout2 | egrep '(<|/)(form|input|select|option)' | ./htmlform2post.py "orderform" | paste -s | tr -d "\t" | sed "s/\ /\+/g" | sed "s/\[/%5B/g" | sed "s/\]/%5D/g" | sed "s/\,/%2C/g" | sed "s/€/%E2%82%AC/g"`"
  39.     echo "Second Post Data.. $POSTDATA" >> iBood.log
  40.  
  41.     # Confirm Order (POST)
  42.     wget --load-cookies cookies.txt --save-cookies cookies.txt --keep-session-cookies --no-check-certificate --no-dns-cache -4 \
  43.          --post-data "order[payment]=$BETAALMETHODE&$POSTDATA" \
  44.          -q -O 'checkout3' 'https://order.ibood.com/be/nl/order_payment_request/'
  45.  
  46.     # Verify if the order has been accepted
  47.     ISOK="`cat checkout3 | grep ^ok`"
  48.     ISDUPE="`cat checkout3 | grep ^dupe`"
  49.     if [ "$ISDUPE" != "" ]; then
  50.         echo "Duplicated Order!"
  51.     elif [ "$ISOK" == "" ]; then
  52.         echo "Problem!"
  53.     else
  54.         echo "In Checkout Process!"
  55.  
  56.         # Generate payment form post data ( + replace characters, php htmlentities was not working )
  57.         POSTDATA="`cat checkout3 | cut -d ';' -f 4 | ./htmlform2post.py "" | paste -s | tr -d "\t" | sed "s/\ /\+/g" | sed "s/\[/%5B/g" | sed "s/\]/%5D/g" | sed "s/\,/%2C/g" | sed "s/€/%E2%82%AC/g"`"
  58.         echo "Payment Post Data.. $POSTDATA" >> iBood.log
  59.  
  60.         # Request ogone checkout
  61.         wget --load-cookies cookies.txt --save-cookies cookies.txt --keep-session-cookies --no-check-certificate \
  62.              --post-data ''$POSTDATA'' \
  63.              -q -O 'ogone.html' 'https://order.ibood.com/be/nl/order_ogone_submit/'
  64.  
  65.         SUCCESS=true
  66.  
  67.         # Launch firefox with ogone page (Redirects to paypal/bancontact on page load)
  68.         (firefox -new-window ogone.html)&
  69.  
  70.         # Make some noise
  71.         (speaker-test -t sine -p 10 -P 2 -l 1 >> /dev/null )&
  72.     fi
  73.  
  74. }
  75.  
  76. echo "Looking for: $ITEM"
  77.  
  78. while [ $SUCCESS == false ]; do
  79.  
  80.     wget -q --no-dns-cache -4 -O 'be_nl.js' 'http://www.ibood.com/js/offer/be_nl.js'
  81.     ISBOX="`grep -i -o "$ITEM" be_nl.js`"
  82.     if [ "$ISBOX" != "" ]; then
  83.         echo JavaScript offer is a box!
  84.  
  85.         OFFERID="`egrep -o '"offer_id":([0-9]*)' be_nl.js | cut -d ":" -f 2`"
  86.         ORDER_Q_ID="`egrep -o '"queue_slot_id":([0-9]*)' be_nl.js | cut -d ":" -f 2`"
  87.         ORDER_HASH="`egrep -o '"order_hash":"([0-9a-f]*)"' be_nl.js | cut -d ":" -f 2 | tr -d '"'`"
  88.         LINK="https://order.ibood.com/be/nl/order/?id=$ORDER_Q_ID&h=$ORDER_HASH"
  89.  
  90.         buyOrder $LINK;
  91.        
  92.     else
  93.        
  94.         sleep 1.00
  95.  
  96.  
  97.         wget -q --no-dns-cache -4 -O 'homepage' 'http://www.ibood.com/be/nl/'
  98.         ISBOX="`grep -i "$ITEM" homepage`"
  99.         if [ "$ISBOX" != "" ]; then
  100.             echo HomePage offer is a box!
  101.  
  102.             LINK="`egrep -o '"btn_order nl" href="([^"]*)"' homepage | cut -d '"' -f 4`"
  103.  
  104.             buyOrder $LINK;
  105.         fi
  106.    
  107.     fi
  108.  
  109.     sleep 1.00
  110.  
  111. done
  112. '
Advertisement
Add Comment
Please, Sign In to add comment