From 99593d03928440e71779a31520cec4bd6b03a2d2 Mon Sep 17 00:00:00 2001 From: Adrian Breiding Date: Mon, 13 Jan 2025 19:52:07 +0100 Subject: [PATCH 1/3] Add `LaVanguardia` --- src/fundus/publishers/es/__init__.py | 18 ++++ src/fundus/publishers/es/la_vanguardia.py | 63 +++++++++++ .../parser/test_data/es/LaVanguardia.json | 101 ++++++++++++++++++ .../es/LaVanguardia_2025_01_13.html.gz | Bin 0 -> 52017 bytes tests/resources/parser/test_data/es/meta.info | 4 + 5 files changed, 186 insertions(+) create mode 100644 src/fundus/publishers/es/la_vanguardia.py create mode 100644 tests/resources/parser/test_data/es/LaVanguardia.json create mode 100644 tests/resources/parser/test_data/es/LaVanguardia_2025_01_13.html.gz diff --git a/src/fundus/publishers/es/__init__.py b/src/fundus/publishers/es/__init__.py index cd531756..8101d61c 100644 --- a/src/fundus/publishers/es/__init__.py +++ b/src/fundus/publishers/es/__init__.py @@ -6,6 +6,7 @@ from fundus.publishers.es.abc import ABCParser from fundus.publishers.es.el_mundo import ElMundoParser from fundus.publishers.es.el_pais import ElPaisParser +from fundus.publishers.es.la_vanguardia import LaVanguardiaParser from fundus.scraping.url import NewsMap, RSSFeed, Sitemap @@ -41,3 +42,20 @@ class ES(metaclass=PublisherGroup): RSSFeed("https://www.abc.es/rss/2.0/portada/"), ], ) + LaVanguardia = Publisher( + name=" La Vanguardia", + domain="https://www.lavanguardia.com/", + parser=LaVanguardiaParser, + sources=[ + NewsMap("https://www.lavanguardia.com/sitemap-google-news.xml"), + NewsMap("https://www.lavanguardia.com/sitemap-news-agencias.xml"), + RSSFeed("https://www.lavanguardia.com/rss/home.xml"), + RSSFeed("https://www.lavanguardia.com/rss/internacional.xml"), + ] + + [ + Sitemap(f"https://www.lavanguardia.com/sitemap-noticias-{d.year}{str(d.month).zfill(2)}.xml.gz") + for d in reversed( + list(rrule(MONTHLY, dtstart=datetime.datetime(2019, 1, 1), until=datetime.datetime.now())) + ) + ], + ) diff --git a/src/fundus/publishers/es/la_vanguardia.py b/src/fundus/publishers/es/la_vanguardia.py new file mode 100644 index 00000000..3dc29d1b --- /dev/null +++ b/src/fundus/publishers/es/la_vanguardia.py @@ -0,0 +1,63 @@ +import datetime +import re +from typing import List, Optional + +from lxml.etree import XPath + +from fundus.parser import ArticleBody, BaseParser, Image, ParserProxy, attribute +from fundus.parser.utility import ( + extract_article_body_with_selector, + generic_author_parsing, + generic_date_parsing, + generic_nodes_to_text, + generic_topic_parsing, + image_extraction, +) + + +class LaVanguardiaParser(ParserProxy): + class V1(BaseParser): + _paragraph_selector = XPath( + "//div[@class='article-modules']//p[@class='paragraph']|" + "//div[@class='widget' and not(@id)]//p[not(@class='creditos')]" + ) + _subheadline_selector = XPath( + "//div[@class='article-modules']//h3[@class='subtitle']|" + "//div[@class='widget' and not(@id)]//h2|//span[@class='ubicacion']" + ) + _summary_selector = XPath("//h2[@class='epigraph']|//div[@id='slide-content-1']/p") + + @attribute + def body(self) -> Optional[ArticleBody]: + return extract_article_body_with_selector( + self.precomputed.doc, + paragraph_selector=self._paragraph_selector, + subheadline_selector=self._subheadline_selector, + summary_selector=self._summary_selector, + ) + + @attribute + def publishing_date(self) -> Optional[datetime.datetime]: + return generic_date_parsing(self.precomputed.ld.bf_search("datePublished")) + + @attribute + def title(self) -> Optional[str]: + return self.precomputed.meta.get("title") + + @attribute + def authors(self) -> List[str]: + return [ + re.sub(r"(?u)\s*\u200b.*", "", author) + for author in generic_author_parsing(self.precomputed.ld.bf_search("author")) + ] + + @attribute + def images(self) -> List[Image]: + return image_extraction( + doc=self.precomputed.doc, + paragraph_selector=self._paragraph_selector, + image_selector=XPath("//figure[contains(@class,'composite-image')]//img"), + caption_selector=XPath("./ancestor::figure//figcaption/p"), + author_selector=XPath("./ancestor::figure//figcaption/span"), + relative_urls=True, + ) diff --git a/tests/resources/parser/test_data/es/LaVanguardia.json b/tests/resources/parser/test_data/es/LaVanguardia.json new file mode 100644 index 00000000..1d201103 --- /dev/null +++ b/tests/resources/parser/test_data/es/LaVanguardia.json @@ -0,0 +1,101 @@ +{ + "V1": { + "authors": [ + "Carlota Guindal" + ], + "body": { + "summary": [ + "El magistrado Ángel Hurtado ve “apuntalados” los indicios contra Álvaro García Ortiz, amplía la investigación a su número dos y señala a Presidencia del Gobierno" + ], + "sections": [ + { + "headline": [], + "paragraphs": [ + "El juez del Tribunal Supremo Ángel Hurtado ha citado a declarar en calidad de investigado al fiscal general del Estado, Álvaro García Ortiz, para el próximo 29 de enero al considerar que los indicios contra él por un delito de revelación de secretos se han visto “apuntalados” durante la instrucción.", + "El magistrado investiga si el número uno de la Fiscalía filtró u ordenó filtrar datos reservados respecto del empresario Alberto González Amador, pareja de la presidenta madrileña, Isabel Díaz Ayuso. Concretamente, se investiga si se filtró a la prensa una serie de correos electrónicos entre el fiscal que investiga al empresario por fraude fiscal y su abogado en el que este último comunicaría la intención de González Amador de reconocer el fraude y pagar una multa a cambio de evitar el juicio.", + "Además de García Ortiz, el instructor cita como investigados a la fiscal jefe provincial de Madrid, Pilar Rodríguez, para el 30 de enero, y para el 5 de febrero, al teniente fiscal de la Secretaría Técnica y mano derecha de García Diego Villafañe.", + "En el auto, Hurtado se basa en el informe de la Unidad Central Operativa (UCO) de la Guardia Civil del pasado mes de noviembre que habla de “la participación preeminente del fiscal general del Estado en los hechos que, finalmente, derivaron en la filtración investigada”." + ] + }, + { + "headline": [ + "Situación de “superioridad” del fiscal general" + ], + "paragraphs": [ + "Para el instructor, en este momento de la causa las diligencias que se han practicado dan un “elevado grado de verosimilitud” sobre la “relevante participación” del fiscal general en esa filtración. Para Hurtado, García Ortiz fue la persona que “dirigió los pasos” para que se revelaran los datos de González Amador, \"aprovechando la situación de superioridad que ostentaba sobre otros fiscales, que se prestaron a ponerse a su disposición, y esto solo cabe entenderlo desde su posición de preeminencia por ser superior jerárquico de todos ellos”.", + "Hurtado analiza en “trasiego” del intercambio de mensajes que se producen el día 13 de marzo de 2024 entre las 21:59 horas, en que Álvaro García Ortiz recibe en su gmail particular el correo en que Pilar Rodríguez le reenvía el de 2 de febrero entre el abogado de Alberto González Amador y el fiscal Julián Salto, y los pasos que da antes para lograr hacerse con él.", + "Estos mensajes, para Hurtado, son “reveladores de momentos de urgencia y gran tensión, que tienen lugar bajo su batuta”. El juez le hace responsable de la noticia publicada en la cadena ser a las 23:51 de ese 13 de marzo con el correo envía por el abogado para ofrecer un acuerdo de conformidad. Además, el propio García ya reconoció que fue él quien dio la orden, el 14 de marzo, de emitir una nota de prensa relatando los contactos entre el abogado y el fiscal ante las noticias publicadas que no se acogían a la realidad de los hechos.", + "Para Hurtado, su intervención “es lo suficientemente indicativo de su papel relevante en la divulgación de una información reservada y confidencial que no debió divulgarse”.", + "“La secuencia y presura de esos pasos ponen de relieve unas prisas por parte del fiscal general del Estado en recoger una determinada información, tantas, que no puede esperar a la mañana siguiente, así como el concreto interés de contar con ese correo de 2 de febrero (del abogado de González Amador ofreciendo un pacto)”." + ] + }, + { + "headline": [ + "Distinto valor a los testigos" + ], + "paragraphs": [ + "El juez no tiene en cuenta el testimonio de los periodistas de la Ser y el Diario, que aseguraron en su declaración como testigos que ellos tuvieron acceso a ese correo horas antes de que lo tuviera el fiscal general. Según Hurtado, “se trata de testimonios que no aportan datos objetivos“.", + "El juez sí tiene en cuenta el testimonio del director de gabinete de Díaz Ayuso, Miguel Ángel Rodríguez, quien aseguró que el difundió también ese correo electrónico pero cuando ya estaba publicado en la prensa.", + "Para el magistrado del Supremo los elementos objetivos que hay en la causa apuntan a que solo tras la recepción por parte de García Ortiz del correo a las 21:59 horas de ese 13 de marzo ”es cuando tiene lugar su difusión, lo que debe llevar a mantener su condición de imputado”." + ] + }, + { + "headline": [ + "El juez defiende la “imparcialidad” de la UCO" + ], + "paragraphs": [ + "El auto destaca que los informes de la UCO han aportado en las diligencias “una información de peso y que, en el momento procesal en que nos encontramos, no podemos ignorar“. Además, advierte que no hay razones para presumir interés alguno de los agentes de la García Civil que han llevado a cabo la investigación.", + "\"Conviene no olvidar las notas de imparcialidad y objetividad en el proceder de un organismo como es esa unidad, que, dicho sea de paso, ha venido contando con el beneplácito del ministerio fiscal en otras causas en que se ha apoyado habitualmente en sus informes para mantener sus tesis acusatorias”, recoge en el auto judicial." + ] + }, + { + "headline": [ + "Hurtado apunta a Presidencia del Gobierno" + ], + "paragraphs": [ + "Uno de los hechos que destaca es que el correo fechado el 2 de febrero que se puso en circulación a partir del 13 de marzo con el ofrecimiento del abogado de González Amador a llegar a un pacto con el fiscal, salió de la Fiscalía General hacia Presidencia de Gobierno.", + "“Llegado a Presidencia del Gobierno, se puso a disposición del testigo Juan Lobato, portavoz del grupo socialista de la Asamblea de Madrid, al objeto de que hiciera uso de él, con una clara finalidad política, en la intervención que tendría la mañana del día 14 en el pleno dicha Asamblea“, apunta el juez.", + "Así, destaca que Lobato planteó inicialmente sus dudas de hacer uso público del documento si no se había publicado previamente en algún medio. De hecho, llega a pedir que se le confirme este extremo, pues, como diría en whatsapp que envía en la mañana del día 14 ”Porque si no parece que me la ha dado la fiscalía“ y otro a continuación que dice ”y Pilar quiere que yo saque el mail de fiscalía. Que no ha salido pero que lo saque yo. No puede ser“.", + "Ante estas circunstancias, añade el auto, “desde Presidencia del Gobierno se hacen gestiones para la publicación en el medio El Plural del correo de 2 de febrero entre el abogado de González Amador y el fiscal, ”donde aparece, pero con los datos personales tapados, que es el que muestra en la Asamblea Juan Lobato, y que no lo estaban en el correo que con anterioridad había recibido él de Presidencia”." + ] + } + ] + }, + "images": [ + { + "versions": [ + { + "url": "https://www.lavanguardia.com/files/content_image_intermediate_filter/uploads/2025/01/13/678525bfebea7.jpeg", + "query_width": "min-width:480", + "size": null, + "type": "image/jpeg" + }, + { + "url": "https://www.lavanguardia.com/files/content_image_desktop_filter/uploads/2025/01/13/678525bfebea7.jpeg", + "query_width": "min-width:638", + "size": null, + "type": "image/jpeg" + }, + { + "url": "https://www.lavanguardia.com/files/content_image_mobile_filter/uploads/2025/01/13/678525bfebea7.jpeg", + "query_width": null, + "size": { + "width": 449, + "height": 220 + }, + "type": "image/jpeg" + } + ], + "is_cover": false, + "description": "El fiscal general del Estado, Álvaro García Ortiz", + "caption": "El fiscal general del Estado, Álvaro García Ortiz", + "authors": [ + "Álex Cámara - Europa Press / Europa Press" + ], + "position": 555 + } + ], + "publishing_date": "2025-01-13 10:22:29+01:00", + "title": "El juez cita como investigado al fiscal general por revelar datos de la pareja de Díaz Ayuso" + } +} diff --git a/tests/resources/parser/test_data/es/LaVanguardia_2025_01_13.html.gz b/tests/resources/parser/test_data/es/LaVanguardia_2025_01_13.html.gz new file mode 100644 index 0000000000000000000000000000000000000000..d55a5ba684abf9f11e11a7611d917a13fb7a3ac6 GIT binary patch literal 52017 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 Date: Mon, 13 Jan 2025 19:01:40 +0000 Subject: [PATCH 2/3] Update documentation from @ 700ff2c73470766a6e4a3174ab0e84bdd2613844 --- docs/supported_publishers.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/supported_publishers.md b/docs/supported_publishers.md index 81fe48d1..9039215a 100644 --- a/docs/supported_publishers.md +++ b/docs/supported_publishers.md @@ -1000,6 +1000,23 @@ + + + LaVanguardia + + +
La Vanguardia
+ + + + www.lavanguardia.com + + + + topics + +   + ABC From feee3e943dbd6178ff08153d48423ef6ee09bb01 Mon Sep 17 00:00:00 2001 From: Adrian Breiding Date: Mon, 13 Jan 2025 20:04:06 +0100 Subject: [PATCH 3/3] remove unused imports --- src/fundus/publishers/es/la_vanguardia.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/fundus/publishers/es/la_vanguardia.py b/src/fundus/publishers/es/la_vanguardia.py index 3dc29d1b..72f83a7b 100644 --- a/src/fundus/publishers/es/la_vanguardia.py +++ b/src/fundus/publishers/es/la_vanguardia.py @@ -9,8 +9,6 @@ extract_article_body_with_selector, generic_author_parsing, generic_date_parsing, - generic_nodes_to_text, - generic_topic_parsing, image_extraction, ) @@ -18,11 +16,11 @@ class LaVanguardiaParser(ParserProxy): class V1(BaseParser): _paragraph_selector = XPath( - "//div[@class='article-modules']//p[@class='paragraph']|" + "//div[@class='article-modules']//p[@class='paragraph'] | " "//div[@class='widget' and not(@id)]//p[not(@class='creditos')]" ) _subheadline_selector = XPath( - "//div[@class='article-modules']//h3[@class='subtitle']|" + "//div[@class='article-modules']//h3[@class='subtitle'] | " "//div[@class='widget' and not(@id)]//h2|//span[@class='ubicacion']" ) _summary_selector = XPath("//h2[@class='epigraph']|//div[@id='slide-content-1']/p")