#! /usr/bin/env python
# -*- coding: utf-8 -*- 

#===================================================================
# Ejercicio en: http://www.pythonchallenge.com/pc/return/good.html
# Solución: parece el dibujo de un toro -> bull
# Obtenemos: http://www.pythonchallenge.com/pc/return/bull.html
#-------------------------------------------------------------------
# FJA - neocipres@telefonica.net            Junio de 2007
#===================================================================

#usuario: huge, password: file

import Image
import ImageDraw
import urllib, sys, re

p = 0
s = 0
primero = []
segundo = []
datimg1 = []
datimg2 = []
try:
    sock = urllib.urlopen( 'http://www.pythonchallenge.com/pc/return/good.html' )
except IOError, (errno, strerror):          
    print '\n Error de E/S (%s): %s' % (errno, strerror), "\n" 
except:
    print "Error no comtemplado: ", sys.exc_info() [0], '\n'  
else:
    lineas = sock.readlines()
    sock.close()
    
    for linea in lineas:
        linea = linea.rstrip("\n") 
        #print linea
        if ( 'first'in linea):
            p = 1
            s = 0
        if p == 1:
            x = re.findall('[0-9]{1,3}', linea)
            if x <> []:
                primero.append( x )
                
       
        if ( 'second'in linea):
            p = 0
            s = 1
        if s == 1:
            x = re.findall('[0-9]{1,3}', linea)
            if x <> []:
                segundo.append( x )
         
    print "\n Primero: \n"
    for i in primero:
        #print " ".join( [j for j in i] )
        for j in i:
            datimg1.append( int( j ) )
    print datimg1
    print "\n Segundo: \n"
    for i in segundo:
        #print " ".join( [j for j in i] )
        for j in i:
            datimg2.append( int( j ) )
    print datimg2, "\n"
    img = Image.open("good.jpg")
    #img = Image.new('RGB', Image.open("good.jpg").size )
    draw = ImageDraw.Draw( img )
    for i in  range( 0, len(datimg1)-3, 2):
        x1 = datimg1[i]
        y1 = datimg1[i+1]
        x2 = datimg1[i+2]
        y2 = datimg1[i+3]
        #print len(datimg1),i, x1, y1, x2, y2
        draw.line( [ x1, y1, x2, y2 ], fill='blue')
    for i in range(0, len(datimg2)-3, 2):
        x1 = datimg2[i]
        y1 = datimg2[i+1]
        x2 = datimg2[i+2]
        y2 = datimg2[i+3]
        draw.line( [ x1, y1, x2, y2 ], fill='blue')
            
    img.show()
