Прямо здесь, на макушке моей головы, поскольку у вас есть смещение (которое, я думаю, вам, возможно, придется настроить, потому что мне пришлось использовать (28,48)),
- Создание подстроки на основе смещения.
- Разделить полную строку HTML, используя
split()
, используя строку смещения в качестве разделителя.
- Возьмите первую подстроку, созданную разделением, и разделите ее с помощью
>
.
Последней и последней подстрокой в этом списке подстрок является ваш родительский тег (поскольку разделенный список будет возвращать пустую строку, если разделитель находится в конце строки, которую вы разделяете):
html_string = '<html><body><span id="1234">The Dormouse\'s story</span><body></head>'
offset_string = html_string[28:48]
tags_together = html_string.split(offset_string)[0]
list_of_tags = tags_together.split('>')
parent_tag = list_of_tags[len(list_of_tags)-2]
Обратите внимание, что вам не хватает '>', поэтому вам придется добавить его обратно, если это необходимо.
parent_tag = parent_tag + ">"
Кроме того, причина, по которой я поставил html_string
в одинарные кавычки, заключается в том, что у вас уже есть двойные кавычки.
Это грубо и немного грубо, но это должно сделать работу. Я уверен, что существует библиотека python, которая может выполнить такую задачу для вас. Вам просто нужно выглядеть достаточно усердно!
Я рекомендую открыть оболочку python и распечатать каждую переменную после ее создания, чтобы вы могли увидеть, что делает split()
. Вот несколько документов для этого!
Теперь, когда я думаю об этом, использование регулярных выражений с вашим известным смещением также может дать вам теги ...