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.

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
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