Почему бы не найти элемент «а»? - PullRequest
1 голос
/ 27 октября 2019

Получить элемент 'div', но так же, как и элемент 'a'.

import requests
from bs4 import BeautifulSoup as bf

# link :
url = "https://www.imdb.com/search/name/?gender=male,female&ref_=nv_tp_cel"


Response = requests.get(url)

soup = bf(Response.text,'lxml')

div = soup.find_all('div', class_ = "lister-item-content")


a_tag = div.find_all('a')

print(a_tag)

Я хочу напечатать все элементы 'a' из элемента 'div'.

1 Ответ

1 голос
/ 27 октября 2019

Итерация по каждому элементу div, затем итерация по каждому a дочернему элементу с div.findChildren:

import requests
from bs4 import BeautifulSoup as bf

# link :
url = "https://www.imdb.com/search/name/?gender=male,female&ref_=nv_tp_cel"


Response = requests.get(url)

soup = bf(Response.text,'lxml')

divs = soup.find_all('div', class_ = "lister-item-content")

for div in divs:
    a_tags = div.findChildren('a')

    for a_tag in a_tags:
        print (a_tag)

, который будет печатать что-то вроде:

...
<a href="/title/tt0356910/"> Mr. &amp; Mrs. Smith
</a>
<a href="/title/tt0137523">Fight Club</a>
<a href="/title/tt1210166">Moneyball</a>
<a href="/title/tt0240772">Ocean's Eleven</a>
<a href="/name/nm0000522"> Vanessa Marcil
</a>
<a href="/title/tt0117500/"> The Rock
</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...