Моя задача - захватить kml-файл, извлечь 1 помеченное значение и отправить его Mongo в geojson. Я получаю файл как объект двоичных запросов.Эффективные способы извлечения XML-метки в Python
doc = requests.get(file).content #returning a XML tree.
Мой вопрос заключается в том, чтобы найти «лучший» подход, чтобы получить значение из тега. Подумайте, у меня есть несколько источников, которые нужно отсканировать с минуты, поэтому, хотя один запуск может занять недолгое время, он будет расти (осознавая, что фактический импорт файла будет стоить больше, чем любой процесс извлечения).
Подходы, которые я пробовал, - BeautifulSoup, slicing и regex. Все они отлично работают, но я хотел бы получить некоторый вклад в альтернативы и/или плюсы и минусы.
def extractsubstring_soup(doc, start):
soup = BeautifulSoup(doc, 'lxml-xml')
return soup.start.string
def extractsubstring_re(doc, start, stop):
return re.search('%s(.*)%s' %(start, stop), a).group(1)
def extractsubstring_slice(doc,start, stop):
substart = doc.index(start) + len(start)
subend = doc.index(end)
return doc[substart:subend]