Я проанализировал HTML-страницу через beautifulsoup, извлекая все элементы div
с конкретными именами class
в список.Обработка списка Python для извлечения подстрок
Теперь мне нужно очистить HTML-строки из этого списка, оставив позади строковые токены, которые мне нужны.
Список Начну с выглядит следующим образом:
[<div class="info-1">\nName1a <span class="bold">Score1a</span>\n</div>, <div class="info-2">\nName1b <span class="bold">Score1b</span>\n</div>, <div class="info-1">\nName2a <span class="bold">Score2a</span>\n</div>, <div class="info-2">\nName2b <span class="bold">Score2b</span>\n</div>, <div class="info-1">\nName3a <span class="bold">Score3a</span>\n</div>, <div class="info-2">\nName3b <span class="bold">Score3b</span>\n</div>]
В пробельные символы являются преднамеренными. Мне нужно, чтобы уменьшить этот список:
[('Name1a', 'Score1a'), ('Name1b', 'Score1b'), ('Name2a', 'Score2a'), ('Name2b', 'Score2b'), ('Name3a', 'Score3a'), ('Name3b', 'Score3b')]
Что такое эффективный способ разобрать подстроки, как это?
Я попытался с помощью split
метода (например, [item.split('<div class="info-1">\n',1) for item in string_list]
), но только расщепление приводит к подстрокам, что требует дальнейшего расщепления (следовательно, неэффективное). Аналогично для использования replace
.
Я чувствую, что мне нужно идти в другую сторону и извлекать нужные мне токены, но я не могу обернуть голову элегантным способом сделать это. Быть новинкой в этом тоже не помогло. Я понимаю вашу помощь.
Это просто здорово. Огромное спасибо :-) –