Issue
I'm trying to get the value from the main titular news from this web page
Here is my code:
news = ""
headers = {
"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0"
}
url = "https://elperuano.pe/"
soup = BeautifulSoup(requests.get(url, headers=headers).content, 'html.parser')
#Obtener noticia principal
for div in soup.findAll('span', attrs={'class':'card-title fz18 lh30 fw500 width100'}):
print(div.text)
This is the unique span tag with has that class name "card-title fz18 lh30 fw500 width100". I don't know why this doesn't work. However if try to get the value of the date of the newspaper this works:
for div in soup.findAll('div', attrs={'class':'lh18'}):
n = div.text.rstrip("\n\n")
I have tested many ways to get this, but seems that the webpage is locking this. Any idea to fix this problem guys I will appreciate it. Thanks so much.
Solution
The problem is that the page dynamically loads news. You need to use _GetPortadaPrincipal and _GetNoticiasDestacadas methods to get the news you need
import requests
principal_news = requests.get('https://elperuano.pe/Portal/_GetPortadaPrincipal').json()
print('Title:', principal_news['vchTitulo'].strip())
print('Description:', principal_news['vchDescripcion'].strip())
OUTPUT
Title: Presidenta Dina Boluarte invita a empresarios alemanes a invertir en el país
Description: La presidenta de la República, Dina Boluarte, se reunió en Alemania con un grupo de empresarios y directivos de ese país, a quienes invitó a invertir en el Perú.
Or you can get recommended news like that:
import requests
recommended_news = requests.get('https://elperuano.pe/Portal/_GetNoticiasDestacadas').json()
for news in recommended_news:
print('Title:', news['vchTitulo'].strip())
print('Description:', news['vchDescripcion'].strip())
print('*' * 10)
OUTPUT
Title: Presidenta Dina Boluarte resalta lazos entre Perú y Alemania
Description: La presidenta de la República, Dina Boluarte, destacó los lazos entre Perú y Alemania, y reiteró su invitación a los inversionistas del país europeo, resaltando las fortalezas económicas peruanas.
**********
Title: Cancillería: avión presidencial parte este viernes a Israel para evacuar a connacionales
Description: El Ministerio de Relaciones Exteriores informó que se hará uso del avión presidencial para evacuar de Israel a nuestros connacionales que aún permanecen en dicho país.
**********
Title: Premier Otárola: "no escatimaremos esfuerzos para repatriar a los peruanos en Israel"
Description: El presidente del Consejo de Ministros, Alberto Otárola, sostuvo que el Gobierno ha realizado el empadronamiento de los peruanos que están varados en Israel y está en condiciones de comunicar serán repatriados en el avión presidencial, protegiendo su vida e integridad
**********
Title: Jefe del Gabinete se reunió con autoridades del Callao y el Cusco
Description: El jefe del Gabinete Ministerial, Alberto Otárola, se reunió con los autoridades municipales de la Mancomunidad Municipal del Callao, y de la provincia cusqueña de Chumbivilcas, con quienes coordinó las necesidades de sus respectivas jurisdicciones para canalizarlas.
**********
Title: Presidenta Boluarte despacha con Ministros a través de medios tecnológicos
Description: La presidenta Dina Boluarte sostuvo una reunión con ministros de Estado a través de los medios tecnológicos, con la finalidad de seguir atendiendo el Despacho Presidencial, en un alto de sus actividades oficiales en Alemania.
**********
Title: Jefa del Estado sostiene encuentro con alcalde de Stuttgart en Alemania
Description: La presidenta Dina Boluarte se reunió con el alcalde de Stuttgart, Alemania, Frank Nopper, dando inicio a sus actividades oficiales en ese país.
Answered By - Sergey K
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.