2014-07-30 11:52 GMT+02:00 Chema Cortes <pych...@gmail.com>: > 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): > .... > > Sí, esta es la opción clara, el código que he puesto es un poco/bastante sucio ya que eran pruebas
> 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"] > ... > > No quiero dependencias de terceros para una pequeña funcionalidad. > 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)) > > > Los ficheros serían locales generados con pandoc (IPython notebook) > > PD: espero que funcione tal cual, porque no he probado nada. > Gracias. > > > >> >> >>> >>> [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/ > >
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/