Olá, Estevão! Tudo bem?
O seu código está bem próximo do que precisa ser feito, mas notei alguns pontos que podem estar causando o problema.
O parâmetro de página deve ser page
, e não pages
. Veja como ficaria:
url_followers = f'{url_amazon}?page={page}'
Em seguida, na linha onde você faz a requisição GET, você está utilizando novamente a variável url_amazon
, quando deveria utilizar a url_followers
que acabou de definir. Veja como ficaria:
response = requests.get(url_followers, headers=headers)
Por fim, no seu laço while, você está quebrando o laço (break
) logo após adicionar os seguidores na lista selected_followers
e incrementar a página. Isso faz com que o laço seja executado apenas uma vez, independentemente do número de páginas. O ideal seria quebrar o laço apenas quando não houver mais seguidores para extrair. Uma maneira de fazer isso seria verificar se a resposta da requisição GET está vazia. Veja como ficaria:
if not followers:
break
else:
selected_followers.append(followers)
page +=1
Com essas modificações, o seu código ficaria assim:
selected_followers = []
page = 1
while True:
url_followers = f'{url_amazon}?page={page}'
response = requests.get(url_followers, headers=headers)
followers = response.json()
if not followers:
break
else:
selected_followers.append(followers)
page +=1
Contudo, você comentou que o código disponibilizado pela instrutora não funcionou, poderia descrever melhor o porquê não funcionou? Compartilhar um print ou o log de erro também seria de grande ajuda.
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.