analysering XML er en utfordring for de som ønsker å være tekst analysator grunn av XML er utvidelsesmuligheter . XML formatering konvensjoner er hierarkisk i naturen , noe som betyr at noen koder dominere andre koder . Regular Expressions ( regexes ) identifisere XML tekst mønstre - En regex for matching XML-koder vil matche alt inne XML-koder < > , men vil ikke vise den hierarkiske organiseringen av disse kodene . Det er mulig å skille denne kodestrukturen fra teksten ved hjelp av programmeringsspråket Python og Natural Language Toolkit pakke , som bygger regulære uttrykk og tekst manipulasjon , og kan vise XML-koder og deres organisasjon. Instruksjoner
en
Åpne et terminal vindu og skriv kommandoen " python - v" i ledeteksten for å sjekke tilstedeværelse og versjon av Python på datamaskinen. Gå til NLTK hjemmeside og laste ned NLTK installasjonspakken passer for ditt operativsystem . Sjekk at NLTK er riktig installert ved å skrive kommandoen " >>> import nltk " i Python ledeteksten.
2
Type " >>> nltk.download ( )" til åpne et vindu . Velg raden merket " alle" og klikk på nedlastnings knappen . Dette vil laste ned en rekke tekster for NLTK å jobbe med, blant dem Shakespeares " The Merchant of Venice " som er formatert med spesielle XML-koder for skuespill .
3
Import Merchant of Venice merket i XML med følgende kommando ved Python melding:
>>> merchant_file = nltk.data.find (' korpus /shakespeare /merchant.xml ')
Angi filen et variabel slik at du kan manipulere det med Python- kommandoer: .
>>> rå = open ( merchant_file ) lese ( )
Bare for å være sikker på at den er der , skriv inn følgende kommando for å vise de første 168 tegnene : .
>>> print rå [ 0:168 ]
Du vil se XML header koder og de spesielle XML spille tags
4
Skriv inn følgende kommando ved Python melding:
>>> fra nltk.etree.ElementTree import ElementTree
og trykk " Return ", da skriver du inn følgende ved Python melding: .
>>> kjøpmann = ElementTree ( ) parse ( merchant_file )
parse kommandoen tillater brukeren å vise XML-koder og deres innhold . Å bygge en hierarkisk visning av riktig nestet XML-koder , skriv inn følgende kommando ved Python melding:
>>> merchant.getchildren ( )
Dette vil vise alle de spesielle XML spille koder i deres hierarkiske orden. Utgangen av denne kommandoen skal se slik ut : en
[ , , , , < ; Element ACT på 22cc0f8 > , , , , ]