adicioar elementos de uma lista em outra

7 views
Skip to first unread message

Frederico Barbosa

unread,
Oct 19, 2021, 9:03:19 AMOct 19
to Python Brasil
Olá.
Eu estou tentando criar uma lista com todos os links de um website e em seguida criar outra lista com todos os links que terminam em 'pdf', mas nesta última lista está adicionando apenas o primeiro link terminado em PDF repetidas vezes. Alguém poderia me ajudar a descobrir onde está o erro?

import requests
import httplib2
import os
from bs4 import BeautifulSoup, SoupStrainer
artigos = []
pdfs = []
http = httplib2.Http()
status, response = http.request('https://www.snh2021.anpuh.org/site/anais')
for link in BeautifulSoup(response, parse_only=SoupStrainer('a')):
          if link.has_attr('href'):
               artigos.append(link['href'])
                   for x in artigos:
                         if x.endswith('pdf'):
                         pdfs.append(x)
                         print(pdfs)

Jeferson Furtado

unread,
Oct 19, 2021, 9:17:01 AMOct 19
to python...@googlegroups.com
Bom dia

Coloca esse loop fora do outro loop

for x in artigos:
                         if x.endswith('pdf'):
                         pdfs.append(x)
                         print(pdfs)
--
--
------------------------------------
Grupo Python-Brasil
https://wiki.python.org.br/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/python-brasil/ae602794-0a65-40c1-8f07-5cb29061124dn%40googlegroups.com.

Frederico Barbosa

unread,
Oct 19, 2021, 10:33:16 AMOct 19
to python...@googlegroups.com
Obrigado, Jeferson. Deu certo!!
Frederico Barbosa
Engº. de Produção
Contato:
34 9 8864-3348


Reply all
Reply to author
Forward
0 new messages