Простой код не работает и мне нужна помощь.
df имеет 44000 строк, подобных этой
<chat>
<messages>
<chat-message>
<timestamp>2017-08-22T15:08:35.906-04:00</timestamp>
<name />
<body>Hello Mikey, I see you want to chat with us today about: Account
Assistance. If you are chatting on a mobile device or tablet, your session
will end if you navigate away from the chat window. A representative will be
with you momentarily.</body>
<usertype>system</usertype>
</chat-message>
<chat-message>
, которые представляют собой несколько тегов со своими собственными тегами.Я хочу захватить все блоки тела и объединить их в одну запись.
def msgg(row):
root = ET.fromstring(row)
work = ""
for body in root.findall('messages/chat-message/body'):
work = work + body.text
return work
for row in df5['chat']:
try:
df5['test'] = df5['chat'].apply(msgg)
except:
pass
У моей функции есть обработчик исключений, потому что без него я получаю эту ошибку:
ParseError: no element found: line 1, column 32759
Интернет сказалэта ошибка возникает, когда в XML-файле есть неверные теги.С обработчиком исключений я не получаю ошибок, но код работает вечно;он работает 35 минут сейчас;Я уверен, что когда я наконец получу результаты, они станут мусором.Помогите!