Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ABC #636

Open
wants to merge 3 commits into
base: add-el-mundp
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions docs/supported_publishers.md
Original file line number Diff line number Diff line change
Expand Up @@ -980,6 +980,21 @@
</tr>
</thead>
<tbody>
<tr>
<td>
<code>ABC</code>
</td>
<td>
<div>ABC</div>
</td>
<td>
<a href="https://www.abc.es/">
<span>www.abc.es</span>
</a>
</td>
<td>&#160;</td>
<td>&#160;</td>
</tr>
<tr>
<td>
<code>ElMundo</code>
Expand Down
13 changes: 12 additions & 1 deletion src/fundus/publishers/es/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@
from dateutil.rrule import MONTHLY, rrule

from fundus.publishers.base_objects import Publisher, PublisherGroup
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.scraping.url import RSSFeed, Sitemap
from fundus.scraping.url import NewsMap, RSSFeed, Sitemap


class ES(metaclass=PublisherGroup):
Expand All @@ -30,3 +31,13 @@ class ES(metaclass=PublisherGroup):
RSSFeed("https://e00-elmundo.uecdn.es/elmundo/rss/espana.xml"),
],
)
ABC = Publisher(
name="ABC",
domain="https://www.abc.es/",
parser=ABCParser,
sources=[
NewsMap("https://www.abc.es/sitemap.xml"),
RSSFeed("https://www.abc.es/rss/2.0/espana/"),
RSSFeed("https://www.abc.es/rss/2.0/portada/"),
],
)
44 changes: 44 additions & 0 deletions src/fundus/publishers/es/abc.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import datetime
from typing import List, Optional

from lxml.etree import XPath

from fundus.parser import ArticleBody, BaseParser, ParserProxy, attribute
from fundus.parser.utility import (
extract_article_body_with_selector,
generic_author_parsing,
generic_date_parsing,
generic_topic_parsing,
)


class ABCParser(ParserProxy):
class V1(BaseParser):
_paragraph_selector = XPath("//div[@class='voc-d ']//p[@class='voc-p']")
_subheadline_selector = XPath("//div[@class='voc-d ']//h3[@class='voc-d-c__s-title']")
_summary_selector = XPath("//div[@class='voc-info-container']/h2[text()]")

@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 generic_author_parsing(self.precomputed.ld.bf_search("author"))

@attribute
def topics(self) -> List[str]:
return generic_topic_parsing(self.precomputed.meta.get("keywords"))
72 changes: 72 additions & 0 deletions tests/resources/parser/test_data/es/ABC.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
{
"V1": {
"authors": [
"Toni Jiménez"
],
"body": {
"summary": [
"La Audiencia de Valencia considera a quien fuera presidente de la Generalitat autor de los delitos de prevaricación, cohecho, falsedad y blanqueo de capitales",
"El tribunal le impone una multa de 25 millones de euros al determinar que ocultó una fortuna en el extranjero procedente de las mordidas del concurso amañado de las ITV"
],
"sections": [
{
"headline": [],
"paragraphs": [
"La Audiencia de Valencia ha condenado a penas que suman 10 años y 5 meses de prisión al exministro Eduardo Zaplana por el caso Erial, al determinar que, siendo presidente de la Generalitat en 1997, amañó el concurso público de las estaciones de la ITV para obtener mordidas millonarias. Una fortuna que se desvió a paraísos fiscales para ocultarla y retornarla más tarde a España, a través de una compleja estructura societaria.",
"El tribunal considera a Zaplana -que siempre ha defendido su inocencia- autor de los delitos de prevaricación, cohecho, falsedad y blanqueo de capitales. También le impone 17 años y 10 meses de inhabilitación para empleo y cargo público, otros tres para el ejercicio de su profesión y multas por un importe superior a los 25 millones de euros. Aunque le absuelve del delito de grupo criminal, el fallo decreta el comiso de diferentes bienes y cuantías intervenidas durante la instrucción de la causa.",
"La sentencia de 364 páginas -notificada a las partes este martes- condena también a otros cinco acusados, algunos de ellos con penas mínimas al haber confesado en el juicio, celebrado entre marzo y mayo, tras alcanzar un pacto con la Fiscalía. Al asesor fiscal considerado el ingeniero de la trama, Francisco Grau, la Audiencia le impone cinco años de prisión por blanqueo de capitales, además de una multa de veinte millones de euros.",
"Por su parte, el testaferro confeso y amigo íntimo de Zaplana, Joaquín Barceló, apodado 'Pachano', ha sido condenado a un año y tres meses de prisión por blanqueo. Mientras, Juan Francisco García, exjefe de gabinete del dirigente del PP durante su etapa al frente de la Generalitat Valenciana, ha sido condenado a dos años y once meses de cárcel por cohecho, falsedad y blanqueo y otros cuatro de inhabilitación por prevaricación.",
"A los empresarios Vicente y José Cotino se les imponen una pena de tres años y cinco meses de prisión por cohecho, falsedad y blanqueo para el primero; y dos años por cohecho para el segundo.",
"Barceló, García y los sobrinos del exdirector de la Policía Juan Cotino, fallecido en 2020, reconocieron ante el tribunal los hechos que ahora se consideran probados. Además, el empresario Francisco Pérez, conocido como 'El Gasofa', ha sido condenado a un año y medio de prisión por falsedad.",
"Los ocho acusados restantes han sido absueltos después de que la Fiscalía retirara la acusación para tres de ellos o por no apreciar pruebas que sustenten una condena.",
"Entre los absueltos figuran el también expresidente de la Generalitat José Luis Olivas y la secretaria de Zaplana, Mitsouko Henríquez, así como los hermanos Elvira y Saturnino Suanzes, y los empresarios Pedro Romero, Ángel Salas, Robert-Edgar Bataouche y Carlos Gutiérrez Mondedeu."
]
},
{
"headline": [
"Recurso ante el Supremo"
],
"paragraphs": [
"La sentencia no es firme y puede ser recurrida en casación ante el Tribunal Supremo, algo que Eduardo Zaplana ya ha anunciado que hará. A través de un comunicado remitido por el despacho de abogados que le representa, quien fue portavoz del Gobierno de José María Aznar se ha mostrado «decepcionado» por haber sido condenado «por unas pruebas basadas en pactos y acuerdos opacos y sin ninguna evidencia objetiva» sobre su participación en los hechos.",
"No obstante, el exjefe del Ejecutivo valenciano sigue «confiando» en la Justicia y tiene la certeza de que «tarde o temprano» se reconocerá lo «infundado» de las acusaciones y, en consecuencia, recurrirá a las instancias «que sea necesario». Al mismo tiempo, Zaplana ha mostrado «alegría» por la absolución «de todas las personas cuyo único delito fue haber sido mis amigos o colaboradores y que han tenido que sufrir un acusación igualmente injusta y soportar durante largos años la amenaza de una condena penal sin ningún fundamento»."
]
},
{
"headline": [
"No existen pruebas de amaño en el Plan Eólico"
],
"paragraphs": [
"La Sección Cuarta de la Audiencia Provincial considera probado que Eduardo Zaplana y Juan Cotino pactaron que uno de los lotes de las ITV que se privatizaron en 1997 fueran adjudicados a Sedesa, el grupo empresarial de este último. Juan Francisco García, que presidía la Mesa de Contratación, «hizo lo necesario, siguiendo las indicaciones de Zaplana, para que así fuera». Todo ello a cambio de comisiones. Vicente y José Cotino «fueron conocedores con posterioridad de la existencia de este acuerdo y procedieron a cumplirlo».",
"Sin embargo, respecto a la adjudicación por lotes de los parques eólicos de la Comunidad Valenciana en 2003, los magistrados no aprecian pruebas incriminatorias suficientes que permitan afirmar que Zaplana y García repitieran ese mismo modus operandi. La venta de las participaciones de los Cotino en las empresas adjudicatarias en ambos procedimientos les reportaron beneficios millonarios.",
"La Sala apunta que el exministro recibió en 2004 su contraprestación -6,4 millones de euros- por el amaño de las ITV a través de una sociedad en Luxemburgo. Lo mismo ocurrió con los 2,3 millones que pagaron a García.",
"Aunque se sirvió de su circulo íntimo para camuflarse -su amigo Joaquín Barceló ejercía como titular al exterior y su asesor fiscal Francisco Grau gestionaba los fondos-, Zaplana el «titular real o último beneficiario» de ese dinero, según los magistrados. «Era él quien mandaba», subrayan.",
"En paralelo y con la ayuda de los mismos colaboradores, señalan en su resolución, el exministro constituyó un entramado societario en Panamá con cuentas bancarias en Andorra para recibir más dinero -9,8 millones- de procedencia ilícita. «Se trató no de un acto puntual, sino de una conducta que se prolongó en el tiempo, durante muchos años», durante su carrera política y tras abandonarla en 2008. En total, blanqueó 16.273.520 euros.",
"Además, de acuerdo con la sentencia, existió en cuatro sociedades en España «una unidad de acción y dirección» merced a la cual fueron utilizadas «de una manera coordinada» con el «propósito finalista de permitir de repatriación y uso de fondos provenientes» de la mercantil luxemburguesa -Imison Internacional- «pero velando siempre la verdadera titularidad de los mismos». A través de ellas se efectuaron retiradas de dinero en efectivo o se realizaron inversiones inmobiliarias."
]
},
{
"headline": [
"Los 'papeles del sirio'"
],
"paragraphs": [
"El fallo judicial conocido este martes avala, además, la 'hoja de ruta' de las pesquisas, que iniciaron la causa hace nueve años. Unos papeles que aparecieron durante un registro de la UCO al despacho del abogado del exgerente de Imelsa Marcos Benavent -autodenominado 'yonqui del dinero'-, en el marco del caso Taula. En ellos se señalaba, tal y como esgrimió la Fiscalía, la manera de proceder en varios concursos públicos para que los ganaran ciertas empresas.",
"«Cinco hojas a máquina con tachaduras y un recorte de periódico fechado el 3 de noviembre de 2009 con una noticia referente a la concesión de los parques eólicos de 28 de noviembre de 2006», se limita a subrayar la sentencia. Los documentos -que la defensa del exministro intentó anular- se los había entregado a Benavent un empresario y representante de la comunidad siria e islámica en Valencia que vivía desde 2008 en una casa que antaño había sido propiedad de Eduardo Zaplana.",
"El exdirigente del PP valenciano fue detenido en mayo de 2018 y estuvo en prisión provisional hasta febrero de 2019, tras pasar dos meses ingresado en el Hospital La Fe para ser tratado de leucemia."
]
}
]
},
"publishing_date": "2024-10-15 12:47:33+02:00",
"title": "Condenan al exministro Eduardo Zaplana a diez años de cárcel por el caso Erial",
"topics": [
"condenan",
"exministro",
"eduardo",
"zaplana",
"diez",
"anos",
"carcel",
"erial"
]
}
}
Binary file not shown.
4 changes: 4 additions & 0 deletions tests/resources/parser/test_data/es/meta.info
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
{
"ABC_2024_10_15.html.gz": {
"url": "https://www.abc.es/espana/comunidad-valenciana/condenan-exministro-eduardo-zaplana-diez-anos-carcel-20241015124732-nt.html",
"crawl_date": "2024-10-15 20:30:32.289974"
},
"ElMundo_2024_10_15.html.gz": {
"url": "https://www.elmundo.es/espana/2024/10/15/670e2ff5e85ece54708b459f.html",
"crawl_date": "2024-10-15 18:03:03.644963"
Expand Down