Я пытался удалить первый экземпляр элемента, используя BeautifulSoup, и я уверен, что что-то упустил. Я не использовал find all, так как мне нужно нацелить первый экземпляр, который всегда является заголовком (div) и имеет класс HubHeader. Класс используется в других местах в сочетании с тегом div. К сожалению, я не могу изменить настройки базового HTML.
Я также попытался выбрать один за пределами цикла, и он все еще не работал.
def delete_header(filename):
html_docs = open(filename,'r')
soup = BeautifulSoup( html_docs, "html.parser")
print (soup.select_one(".HubHeader")) #testing
for div in soup.select_one(".HubHeader"):
div.decompose()
print (soup.select_one(".HubHeader")) #testing
html_docs.close()
delete_header("my_file")
Самая последняя ошибка:
AttributeError: 'NavigableString' object has no attribute 'decompose'
Я использую select_one()
и decompose()
.