1
resposta

Listando as tabelas

Eu não entendi por que o dados_html contem os dados das 3 tabelas da pagina, tipo você faz dados_html = pd.read_html('https://raw.githubusercontent.com/alura-cursos/Pandas/main/filmes_wikipedia.html') e só de fazer top_filmes = dados_html[1] ele já foi na segunda tabela da página, eu não entendi como que ele sabe onde buscar os dados da tag table, sendo que eu não indico nada.

1 resposta

Olá, Guilherme! tudo bem?

Quando você chama dados_html = pd.read_html('https://raw.githubusercontent.com/alura-cursos/Pandas/main/filmes_wikipedia.html'), a função pd.read_html() analisa a página HTML fornecida e tenta extrair todas as tabelas presentes nela. Essas tabelas são então retornadas como uma lista de DataFrames do Pandas, onde cada elemento da lista corresponde a uma tabela encontrada na página.

Aqui está a chave para entender por que dados_html[1] retorna a segunda tabela:

  • A indexação em Python e em muitas linguagens de programação começa com 0. Isso significa que o primeiro elemento de uma lista tem o índice 0, o segundo elemento tem o índice 1, e assim por diante.
  • Quando você usa dados_html[1], você está acessando o segundo elemento da lista dados_html, que corresponde à segunda tabela encontrada na página.
  • Se você tivesse utilizado dados_html[0], teria obtido o primeiro DataFrame, que corresponde à primeira tabela encontrada na página.

Portanto, o índice entre colchetes [1] está simplesmente indicando qual tabela você deseja acessar na lista de DataFrames retornada pela função pd.read_html(). Isso é possível porque o Pandas armazena todas as tabelas encontradas na página na lista dados_html, permitindo que você as acesse e manipule conforme necessário.

Espero que isso ajude a esclarecer sua dúvida. Qualquer dúvida não hesite em perguntar!

Bons estudos