names = [] for code in soup.find_all('li'): a_tag = code.find("a") if a_tag is not None and 'title' in a_tag.attrs: l = a_tag.get('title') names.append(l) time.sleep(1) print(names)
Когда я запускаю сценарий, он возвращает только несколько имен (например, атрибутов заголовка) из 30 или около того, и все теги содержат атрибут заголовка. Спасибо!
Вот код html для того, что сработало:
<li class="wo9IH"> <div class="uu6c_"> <div class="t2ksc"> <div class="RR-M- h5uC0 SAvC5" role="button" tabindex="0"> <canvas class="CfWVH" height="40" width="40" style="position: absolute; top: -5px; left: -5px; width: 40px; height: 40px;"></canvas> <span class="_2dbep " role="link" tabindex="0" style="width: 30px; height: 30px;"><img alt="damla_dx's profile picture" class="_6q-tv" src="https://scontent-hbe1-1.cdninstagram.com/v/t51.2885-19/s150x150/100947324_584513555780923_3392957389983449088_n.jpg?_nc_ht=scontent-hbe1-1.cdninstagram.com&_nc_ohc=cpbHm-9Tg24AX-Y5ZTo&oh=523572e76dc634c387c1bce8f5ee24fd&oe=5EF8F269"></span> </div> <div class="enpQJ"> <div class="d7ByH"><a class="FPmhX notranslate _0imsa " title="damla_dx" href="/damla_dx/">damla_dx</a></div> <div class="wFPL8 ">?????</div> </div> </div> <div class="Pkbci"><button class="sqdOP L3NKy y3zKF " type="button">Follow</button></div> </div> </li>
и вот код для того, что не сработало:
<li class="wo9IH"> <div class="uu6c_"> <div class="t2ksc"> <div class="RR-M- SAvC5" role="button" tabindex="0"> <canvas class="CfWVH" height="40" width="40" style="position: absolute; top: -5px; left: -5px; width: 40px; height: 40px;"></canvas> <a class="_2dbep qNELH kIKUG" href="/connie_mario/" style="width: 30px; height: 30px;"><img alt="connie_mario's profile picture" class="_6q-tv" src="https://scontent-hbe1-1.cdninstagram.com/v/t51.2885-19/s150x150/25016555_1962725540720404_7523275851970904064_n.jpg?_nc_ht=scontent-hbe1-1.cdninstagram.com&_nc_ohc=AvK0clN2PSMAX-detNw&oh=6184a0c465a9bfcd04617d134cde4fe9&oe=5EFA793D"></a> </div> <div class="enpQJ"> <div class="d7ByH"><a class="FPmhX notranslate _0imsa " title="connie_mario" href="/connie_mario/">connie_mario</a></div> <div class="wFPL8 ">?Connie_ Mario?</div> </div> </div> <div class="Pkbci"><button class="sqdOP L3NKy y3zKF " type="button">Follow</button></div> </div> </li>
Вы можете сделать что-то более простое с помощью css selctors:
for artist in code.select('a[title]'): print(artist.text)
Для двух фрагментов в вашем вопросе результат должен быть:
connie_mario damla_dx