Re: [Python-es] Extraer un trozo de un codigo HTML

2020-06-23 Por tema Aldo Martinez Selleras
si, acabo de encontrar con body.splitlines() me hacia lo q necesito, y 
en el camino encontre el bs4 que da mas ventajas, ahora voy a empezar a 
jugar con el...


es que el HTML viene super desordenado

muchas gracias!

___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


[Python-es] Extraer un trozo de un codigo HTML

2020-06-23 Por tema Aldo Martinez Selleras
colegas, estoy tratando de extraer, desde el cuerpo de un mensaje de 
correo, algunos trozos de texto


logro tener el cuerpo, pero no hay forma de q pueda sacar, ciertas 
lineas, para luego poder sacar el dato q necesito, si me puedieran dar 
alguna ayuda al respecto, lo agradeceria


el proyecto es revisar un buzon y a partir de un filtro de mensajes x el 
asunto, extraer datos de una orden para ir guardando un registro de 
estas, quizas estoy pensando mal la logica, acepto cualquier sugerencia


oimap.select("Inbox")
typ, data = oimap.search(None, 'ALL')
e_bodies = []
for numin data[0].split():
typ, data = oimap.fetch(num, '(RFC822)')
msg = email.message_from_string(data[0][1].decode())
# decode = email.header.decode_header(msg['Subject']) # print('Message 
%s: %s' % (num.decode(), msg["Subject"])) # Body details for partin msg.walk():

if part.get_content_type() =="text/html":
# part.get_content_type() body = part.get_payload()
# en este punto, necesito filtrar el cuerpo del mensaje, que es un 
codigo HTML, y extraer # algunas lineas

oimap.close()
oimap.logout()


y asi seria de la parte del codigo HTML q necesito extraer datos

   Destinatario 
  
  Nombre: Customer Fullname
  Carnet de Identidad: 09876543219
  
  Pais : Cuba
  Provincia: Camaguey
  Municipio: Camaguey
  Ciudad: Camaguey
  Direccion: Address
  

  Numero de Telefono: 32987654

pero no logro, llegar a la parte, en la que puedo, el texto que viene en 
el payload parsearlo, linea x linea :(


mil gracias x adelantado

___
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es


Re: [Python-es] trabajo con ciclos y arreglos RESUELTO

2012-05-24 Por tema Aldo Martinez Selleras
bueno, primero quiero dar las gracias por las respuesta y comentar que 
ya resolvi, con la idea inicial q me dieron, la de vaciar el arreglo 
(lista), el tema era inicializarlo dentro del ciclo, asi funciona como 
me intersaba, sobre esta ultima respuesta, estoy consciente de que no es 
una lista lo mejor, pero solo para ver los resultados los estaba usando, 
al final, no me es funcional el arreglo, ya q la idea final es que por 
cada ciclo, ejecute una consulta SQL.


sobre los diccionarios, no tengo mucha idea de como funcionan ni cuando 
utilizarlos, voy a leer un poco sobre el tema para ver como los uso.


el tema de las condiciones, he programado mucho mas en PHP q en python, 
y no sabia q se podia hacer eso, mil gracias! no cabe duda que reduce 
bastante el codigo, supongo q tambien ayuda a que python interprete 
mejor el codigo!


si hay variables puestas de muchas pruebas q he hecho, no lo limpie lo 
suficiente antes de enviar el snnipet del codigo, disculpen por eso tambien


vaya esta ultima parte del como haria ud el codigo, la verdad que se 
complica un poco :); la condicion la entiendo, pero la parte del 
diccionario no mucho, y el mapa, se me ocurre la idea, pero igual, tengo 
q leer un poco al respecto para entenderlo.


muchas gracias una vez mas
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] trabajo con ciclos y arreglos

2012-05-24 Por tema Aldo Martinez Selleras

me parece q eso esta bien... pero como lo hago?? ;(

soy newbie en python!

gracias
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] trabajo con ciclos y arreglos

2012-05-24 Por tema Aldo Martinez Selleras
estoy trabajando en parsear un archivo .ini con el modulo ConfigParser, 
y todo lo hace super el modulo, pero tengo una inquietud, que se me 
traba el paraguas, a ver si me pueden dar una luz de como resolver el 
tema, el codigo es basicamente este


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

conf = ConfigParser.ConfigParser()
conf.read('96969696.dat')

usuarios = []
sections = []
plantillas = []
sections = conf.sections()

for sect in sections:
if conf.has_option(sect,"IsTemplate"):
plantillas.append(sect)
else:
if len(conf.options(sect)) > 0:
  if not conf.get(sect,'tp') == 'Default':
if not conf.has_option(sect,"c1"):
  if conf.has_option(sect,'timequota'):
quota = conf.get(sect,'timequota')
usuarios.append(conf.get(sect,'timequota'))
  if conf.has_option(sect,'fg'):
if conf.get(sect,'fg') == '256':
   status = conf.get(sect,'fg')
   usuarios.append(conf.get(sect,'fg'))
  if conf.has_option(sect,'email'):
email = conf.get(sect,'email')
usuarios.append(conf.get(sect,'email'))
  if conf.has_option(sect,'timeusedlastupdated'):
last = conf.get(sect,'timeusedlastupdated')
usuarios.append(conf.get(sect,'timeusedlastupdated'))
  if conf.has_option(sect,'passwordlastupdated'):
lastpw = conf.get(sect,'passwordlastupdated')
usuarios.append(conf.get(sect,'passwordlastupdated'))
  if conf.has_option(sect,'checkavl'):
phone = conf.get(sect,'checkavl')
usuarios.append(conf.get(sect,'checkavl'))
  tused = conf.get(sect,'timeused')
  usuarios.append(conf.get(sect,'timeused'))
  tpl = conf.get(sect,'tp')
  usuarios.append(conf.get(sect,'tp'))
  print '\r'
  print usuarios
  #print quota

explico esto un poco!
me extrae todas las secciones,(son usuarios con sus atributos), excluyo 
algunso que no me interesa, usuarios por defecto o definicion de 
Plantillas de usuarios, luego voy extrayendo los atributos que mas me 
interesan de cada usuario, al final cuando imprimo el arreglo `usuarios` 
me va acumulando, y el ultimo me contiene TOOODOS los usuarios con sus 
atributos, y quiero que por cada seccion = usuario me devuelve el 
arreglo unico, la idea final es que cada usuario lo ponga en una base de 
datos de MySQL, pero la parte de la base de datos la hare despues q esta 
parte funcione bien


saludos y gracias de antemano
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] extraer cadena dentro de corchetes

2012-02-02 Por tema Aldo Martinez Selleras
bueno, disculpenme, pero me deslumbre un poco con la sencillez de los 
codigos de python, el codigo que envio el colega Jhonlier esta super, 
pero el tema del modulo ConfigParser esta mas que genial, xq ya este me 
evita mchas molestias de entrar en temas del codigo que este 
resuelve, me refiero a lo de extraer los atributos de cada seccion, wao, 
eso esta MUY pero MUY bueno


gracias a todos

PD: algun libro que recomienden para leer poco a poco, preferiria que 
fuera lo mas practico posible

___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] extraer cadena dentro de corchetes

2012-02-02 Por tema Aldo Martinez Selleras

gracias, este funciono perfecto para lo que necesito!
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] extraer cadena dentro de corchetes

2012-02-01 Por tema Aldo Martinez Selleras


On 02/01/2012 04:28 PM, Kiko wrote:



El 1 de febrero de 2012 21:52, Aldo Martinez Selleras mailto:a...@caonao.cu>> escribió:

saludos a todos, soy nuevo en la lista y en el mundo de python,
entre en el por interes propio, debido a la referencia q tengo de la
robustez del lenguaje de programacion, y tengo una tarea ahora con
un archivo que necesito parsear y es el primer proposito que me he
autoindicado para hacer con python.

resulta que es un archivo con un estructura determinada, y ya se
como leer el archivo linea por linea, pero se me trabo el paragua al
querer sacar una cadena que esta entre dos corchetes, pongo detalles

la estructura del archivo es esta
[cadena1]
attr1 = value1
attr2 = value2
attr3 = value3
attr4 = value4
attr5 = value5

[cadena2]
attr1 = value1
attr2 = value2
attr3 = value3
attr4 = value4
attr5 = value5

y ya logre hacer esto, que me gusta como funciona!

lineas = []

fichero = open("file.data", "r")

for linea in fichero.readlines():
if not linea:
break
if linea[0] == '[':
lineas.append(linea)
print lineas
fichero.close()


y esto me devuelve
[cadena1], [cadena2]

Con lo que tienes hecho puedes hacer (solo he incluido lo que está en
negrita, el resto es exactamente tu programa):

lineas = []

fichero = open("file.data", "r")

for linea in fichero.readlines():
if not linea:
break
if linea[0] == '[':
lineas.append(linea*[1:-1]*)
print lineas
fichero.close()

Mira en [1] para ver más.

[1] http://docs.python.org/tutorial/introduction.html#strings


eso me devuelve el arreglo, pero de esta forma :(

'cadena1]','cadena2]'

la verdad en casi todos los intentos q hice, me daba mas problemas con 
el corchete del final, es como q mas conflictivo este


muchas gracias
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] extraer cadena dentro de corchetes

2012-02-01 Por tema Aldo Martinez Selleras
saludos a todos, soy nuevo en la lista y en el mundo de python, entre en 
el por interes propio, debido a la referencia q tengo de la robustez del 
lenguaje de programacion, y tengo una tarea ahora con un archivo que 
necesito parsear y es el primer proposito que me he autoindicado para 
hacer con python.


resulta que es un archivo con un estructura determinada, y ya se como 
leer el archivo linea por linea, pero se me trabo el paragua al querer 
sacar una cadena que esta entre dos corchetes, pongo detalles


la estructura del archivo es esta
[cadena1]
attr1 = value1
attr2 = value2
attr3 = value3
attr4 = value4
attr5 = value5

[cadena2]
attr1 = value1
attr2 = value2
attr3 = value3
attr4 = value4
attr5 = value5

y ya logre hacer esto, que me gusta como funciona!

lineas = []

fichero = open("file.data", "r")

for linea in fichero.readlines():
if not linea:
break
if linea[0] == '[':
lineas.append(linea)
print lineas
fichero.close()


y esto me devuelve
[cadena1], [cadena2]

lo que me interesa guardar en lineas es solo la cadena dentro de los 
corchetes, pero he hecho mil pruebas y ninguna satisfactoria :( ; me 
parece que es por ser unos corchetes, como son caracteres q usan las 
expresiones regulares, el que mejor resultado me dio fue con sub.


re.sub('\[','',linea)
re.sub('\]','',linea)

pero me gustaria hacer esto q logro con dos lineas, hacerlo en una, o 
mejor, solo extraer el texto que esta dentro de los corchetes, esto me 
da como resultado que elimina los corchetes, pero es q no es eso lo q me 
interesa.


espero haber sido explicito

gracias de antemano
___
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/