Получить данные в пределах <a>внутри тега span - PullRequest
1 голос
/ 08 ноября 2019

Я застрял в получении всех данных внутри тега span. Мой код дает мне только каждое первое значение в каждом a () в теге span и игнорирует другие значения. В моем примере: (примечание: я сократил содержание диапазона здесь, но оно внутри)

<span class="block-niveaux-sponsors">
<a href="http://www.keolis.com/" id="a47-logo-part-keolis" target="_blank">
<img src="images/visuels_footer/footer/part_keolis.201910210940.jpg"/>
</a>
<div class="clearfix"></div>
</span>

<span class="block-niveaux-sponsors">
<a href="http://www.cg47.fr/" id="a47-logo-part-cg47" target="_blank">
<img src="images/visuels_footer/footer/part_cg47.201910210940.jpg"/>
</a>
<div class="clearfix"></div>
</span>

<span class="block-niveaux-sponsors">
<a href="http://www.errea.it/fr/" id="a47-logo-part-errea" target="_blank">
<img src="images/visuels_footer/footer/part_errea.201910210940.jpg"/>
</a>
<div class="clearfix"></div>
</span>

Мой код:

page = urlopen(lien_suagen)
soup = bs(page, 'html.parser')
title_box_agen = soup.find_all('div', attrs={'id':'autres'})
for tag in title_box_agen:
    for each_row in tag.find_all('span'):
        links = each_row.find('a', href=True)
        title = links.get('id')
        print(title)

Это дает мне только первые id значения в. Я хочу все идентификаторы.

Ответы [ 2 ]

1 голос
/ 08 ноября 2019

Вы должны попробовать:

page = urlopen(lien_suagen)
soup = bs(page, 'html.parser')
title_box_agen = soup.find_all('div', attrs={'id':'autres'})
for tag in title_box_agen:
    for each_row in tag.find_all('span'):
        links = each_row.find_all('a', href=True)
        for link in links:
            title = link.get('id')
            print(title)
1 голос
/ 08 ноября 2019

Вы можете получить все идентификаторы ссылок для каждого из классов niveux, как это. (не проверено)

page = urlopen(lien_suagen)
soup = bs(page, 'html.parser')
spans_niveux = soup.find_all('span' class_='block-niveaux-sponsors')
for span in spans_niveux:
    link = span.find('a', href=True)
    id = link.id
    print(id)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...