from bs4 import BeautifulSoup

import requests

req = requests.get("http://pythonscraping.com/pages/page3.html")

bs = BeautifulSoup(req.text, "html.parser")

bs.find({"span"})

bs.findAll({"span"})

"""
Explanation: BeautifulSoup
End of explanation
"""


for filho in bs.find("table", {"id":"giftList"}).children:
    print(filho)

"""
Explanation: Lidando com filhos e outros descendentes
Se você o escrevesse usando a função descendants() em vez da função children(), outras tags seriam encontradas (img, span, entre outros). É muito importante diferenciar filhos e descendentes!
Para listar as linhas de produtos da tabela giftList.
End of explanation
"""


for irmao in bs.find("table", {"id":"giftList"}).tr.next_siblings:
    print(irmao)

"""
Explanation: Lidando com irmãos
Para exibir todas as linhas de produtos da tabela.
End of explanation
"""


