El 30 de julio de 2014, 10:58, Kiko <kikocorre...@gmail.com> escribió:
> > > > El 30 de julio de 2014, 10:33, Eduard Diaz <eventgra...@gmail.com> > escribió: > > No hace falta que lo parsees a mano utiliza la libreria base64[1] >> >> > Creo que no lo he explicado correctamente. El problema de transformar la > información está resuelto. Mi problema es como obtener la información para > poder transformarla. > Así visto, no parece que te vaya a dar problemas, aunque se puede hacer más fácil. Alternativas: 1) Hacer que el módulo 're' extraiga la información necesaria pat = re.compile('<img src="data:image/(.*?);base64,(.*?)"', re.DOTALL) for (ext, data) in pat.findall(texto): .... 2) Utilizar algún módulo de scraping (eg: BeautifulSoup) from bs4 import BeautifulSoup soup = BeautifulSoup(html) for img in soup.find_all("img"): src = img["src"] ... Una vez que obtienes el 'src' puedes usar tú método con expresiones regulares o, mucho mejor, urlretrieve como en el método siguiente: 3) Utilizar urlretrieve Python2: from urllib import urlretrieve Python3: from urllib.request import urlretrieve import os import shutil from urllib import urlretrieve local_file, headers = urlretrieve(src) ext = headers.subtype shutil.copy(local_file, "mifichero.{}".format(ext)) PD: espero que funcione tal cual, porque no he probado nada. > > >> >> [1]http://www.programcreek.com/2013/09/convert-image-to-string-in-python/ >> >> El día 30 de julio de 2014, 9:25, Kiko <kikocorre...@gmail.com> escribió: >> > Hola a todos. >> > >> > Estoy intentando extraer información de imágenes de un código html >> > (http://en.wikipedia.org/wiki/Data_URI_scheme) >> > >> > El formato sería el siguiente: >> > >> > <img >> > >> src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXcAAAEACAYAAABI5zaHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz >> > AAALEgAACxIB0t1+/AAA" /> >> > >> > >> > Me interesa extraer la extensión de la imagen (png en el anterior >> ejemplo) y >> > los datos que vienen después de 'base64,' hasta el cierre de comillas >> '"', >> > es decir, >> > >> 'iVBORw0KGgoAAAANSUhEUgAAAXcAAAEACAYAAABI5zaHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz >> > AAALEgAACxIB0t1+/AAA'. >> > >> > >> > Tengo un ejemplo aquí, >> > https://gist.github.com/anonymous/75ab61f586c19e767cf0, pero estoy >> seguro de >> > que mi regex me va a fallar en cuanto encuentre alguna cosa más rara. >> > >> > ¿Alguien me podría indicar si el regex vale o si debería modificarlo >> para >> > que no me dé falsos positivos o acepte falsos negativos? >> > >> > Muchas gracias por adelantado. >> > >> > >> > _______________________________________________ >> > Python-es mailing list >> > Python-es@python.org >> > https://mail.python.org/mailman/listinfo/python-es >> > FAQ: http://python-es-faq.wikidot.com/ >> > >> _______________________________________________ >> Python-es mailing list >> Python-es@python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Hyperreals *R "Quarks, bits y otras criaturas infinitesimales": http://ch3m4.org/blog Buscador Python Hispano: http://ch3m4.org/python-es
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/