Я хочу, чтобы извлечь вторую ссылку (то есть ссылка на число «2») из следующего HTML-кода:Вызов конкретного элемента «DIV» с помощью BeautifulSoup
<div class="post-footers">
1 |<a href="index.html?page=2"> 2 </a>
|<a href="index.html?page=3"> 3 </a>
|<a href="index.html?page=4"> 4 </a>
</div>
Так я думал, чтобы вывести все href
в список, а затем извлечь элемент с индексом 1, как показано ниже:
tags = soup.find("div", class_="post-footer")
links = tags.get('href')
print links[1]
Но он возвращает ошибку:
newtags.get('href', None)
AttributeError: 'NoneType' object has no attribute 'get'
Это означает, что теги оказались пустыми. Так где же в коде я ошибаюсь?
Спасибо, если кто-нибудь сможет помочь :)
Ооо, что кажется хорошим. Я немного новичок в python. Итак, не возражайте, чтобы я спросил - это регулярное выражение, не так ли? часть «i.attrs ...» Я этого не понимал. –
Также еще один вопрос: в попытке 1, i проходит все теги a внутри элемента div. И 'i.attrs' извлекает часть href из тегов 'a' и выводит их как другой список? Спасибо, кстати. –
@RahulRamesh Я использовал 'list comprehension' там, нашел все' a' и выберет '' href' часть. –