У меня есть текстовый файл ~ 500k строк с довольно случайным синтаксисом HTML. Примерная структура файла выглядит следующим образом:
content <title> title1 </title> more words
title contents2 title more words <body> <title> title2 </title>
<body><title>title3</title></body>
Я хочу извлечь все содержимое между тегами.
title1
title2
title3
Это то, что я пробовал до сих пор:
content_list = []
with open('C://Users//HOME//Desktop//Document_S//corpus_test//00.txt', errors = 'ignore') as openfile2:
for line in openfile2:
for item in line.split("<title>"):
if "</title>" in item:
content = (item [ item.find("<title>")+len("<title>") : ])
content_list.append(content)
Но этот метод не позволяет получить все теги. Я думаю, что это может быть связано с тегами, которые связаны с другими словами, без пробелов. Ie. <body><title>
.
Я рассмотрел замену каждого '<' и '>' пробелом и выполнил один и тот же метод, но если бы я это сделал, я бы получил «contents2» в качестве вывода.