def ProjetEncadre2(

nom="Etiquetage avec UDpipe et TreeTagger"

def bao2():

Annotation morphosyntaxiques des donées extraites.
J'utilise 2 parser pour la réalisation de cette étape :
TreeTagger annotant uniquement en POS et en lemme
Et UDpipe, pouvant annoter également en relation de dépendance, et à un niveau morphologique plus fin.

#---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------#

def python():

UDpipe
	

#Chargement d'un modèle udpipe via spacy_udpipe
udpipe = spacy_udpipe.load("fr-sequoia")
#Augmentation de la longueur maximale du document en sortie (certaines rubriques pouvant être trop longues)
udpipe.max_length=10000000
  
#fonction de nettoyage ne prenant que le contenu textuel des fichiers, c'est utile pour l'annotation
def clean_txt(fichier,reg):

  with open(fichier,"r",encoding="UTF-8") as f:
    doc="".join(f.readlines())
  
  clean=""
  for m in re.finditer(reg,doc):
    t=m.group(1)
    d=m.group(2)
    clean+=f'{t}\n{d}\n'
  
    return clean
	
#fonction de parsing, renvoyant un fichier annoté en un pseudo format conll gardant unique forme, lemme et POS séparés par des tabulations
def analyse_txt(texte):
    doc =  udpipe(texte)
    result = ""
    for token in doc:
      result += f"{token.text}\t{token.lemma_}\t{token.pos_}\n"
    return result
TreeTagger(simili)
	
#J'ai simplement mis au format xml la sortie de spacy_udpipe
def token2xml(token):
    return f'{token.pos_}{token.lemma_}{token.text}\n'


#même fonction de parsing que précédemment renvoyant une sortie xml
def analyse_xml(texte):
    doc = udpipe(texte)
    result = ""
    for token in doc:
      result += token2xml(token)
    return result
Programme
	
def bao2(fichier,reg):
    texte=clean_txt(fichier,reg)
    txt=analyse_txt(texte)
    xml=analyse_xml(texte)
    with open("analyse_BAO2.txt","w",encoding="UTF-8") as out:
      out.write(txt)
    with open("analyse_BAO2.xml","w",encoding="UTF-8") as out:
      out.write(xml)          
    return txt,xml


if __name__ == "__main__":
#regex dépendant du fichier en entrée, celle-ci fonctionne avec le fichier xml
  regex_item = re.compile("<item>\n<titre>(.*?)</titre>\n<description>(.*?)</description>\n</item>\n")
  
  fichier=sys.argv[1]
  
  bao2(fichier,regex_item)
python3 bao2.py extraction_BAO1.xml

return script, résultat