Извлечение текста из нескольких XML-файлов с помощью beautifulsoup

#python #beautifulsoup #extract

Вопрос:

У меня есть по крайней мере 500 XML — файлов, в которых мне нужно найти текст и фразы на языке, отличном от английского.

Поскольку эти XML-файлы заполнены большим количеством тегов и небольшим количеством текста, я подумал, что одним из способов решить мою проблему было извлечь текст из этих файлов, чтобы найти предложения на других языках, используя beautifulsoup.

Я уже начал, но я застрял, вот что я делал до сих пор :

 from bs4 import BeautifulSoup
import glob

for filename in glob.glob("*.xml"):
    with open(filename) as open_file:
        content = open_file.read()
        soup = BeautifulSoup(content, 'lxml')
        textExtracted = soup.findAll(text=True)
        print(' '.join(textExtracted))

 

Чтобы найти и узнать, какой текст взят из какого файла, необходимо было бы иметь имя файла перед извлечением, как я мог бы это сделать? Есть библиотека, которую можно использовать для этого?

Не могли бы вы мне помочь ?

Комментарии:

1. Если вам нужно отслеживать имя файла, почему бы вам не создать словарь и не назначить текст каждому ключу имени файла? Пример: dict_xml[filename] = ' '.join(textExtracted)

2. Да, это хорошая идея. Но сейчас мой скрипт не работает, не печатает smt