Mostrando las entradas con la etiqueta codepad. Mostrar todas las entradas
Mostrando las entradas con la etiqueta codepad. Mostrar todas las entradas

martes, 27 de agosto de 2013

El siguiente programa filtra los datos importantes en un documento xml y los imprime de forma organizada:

http://codepad.org/z9D2wFv0

arch = """<listitem>
    <variable name="UUID">2bd9c142-9e91-4182-b85c-5bb616823bd9</variable>
    <variable name="Name">kurokysan</variable>
    <variable name="AccStatus">1</variable>
    <variable name="WWWFilter">JARSP</variable>
    <variable name="UseTemplate">1</variable>
    <variable name="Rights">0</variable>
    <variable name="AdmFilter">JARSP</variable>
    <variable name="QuotaDayEnabled">0</variable>
    <variable name="QuotaDayType"></variable>
    <variable name="QuotaDay">5242880</variable>
    <variable name="QuotaWeekEnabled">0</variable>
    <variable name="QuotaWeekType"></variable>
    <variable name="QuotaWeek">0</variable>
    <variable name="QuotaMonthEnabled">0</variable>
    <variable name="QuotaMonthType"></variable>
    <variable name="QuotaMonth">0</variable>
    <variable name="QuotaAction"></variable>
    <variable name="QuotaSendAlert">0</variable>
    <variable name="Lang">detect</variable>
    <variable name="DontUseLangTemp">0</variable>
    <variable name="DetectedLang"></variable>
  </listitem>"""


indice = 0
indice2 = 0
while indice < len(arch):
    init = arch.find('"',indice)
    final = arch.find('"',init + 1)
    init2 = arch.find('">',indice2)
    final2 = arch.find('<',init2+1)
    if init == -1:
        break
    indice = final + 1
    indice2 = final + 1
    if len(arch[init2+2:final2]) == 0:
        print arch[init+1:final] + ' = ' + str(None)
    else:
        print arch[init+1:final] + ' = ' + str(arch[init2+2:final2])


Output:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
UUID = 2bd9c142-9e91-4182-b85c-5bb616823bd9
Name = kurokysan
AccStatus = 1
WWWFilter = JARSP
UseTemplate = 1
Rights = 0
AdmFilter = JARSP
QuotaDayEnabled = 0
QuotaDayType = None
QuotaDay = 5242880
QuotaWeekEnabled = 0
QuotaWeekType = None
QuotaWeek = 0
QuotaMonthEnabled = 0
QuotaMonthType = None
QuotaMonth = 0
QuotaAction = None
QuotaSendAlert = 0
Lang = detect
DontUseLangTemp = 0
DetectedLang = None