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

added Bayerischer Rundfunk as publisher #435

Merged
merged 9 commits into from
May 5, 2024
Merged
Show file tree
Hide file tree
Changes from 6 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 @@ -82,6 +82,21 @@
</tr>
</thead>
<tbody>
<tr>
<td>
<code>BR</code>
</td>
<td>
<div>Bayerischer Rundfunk (BR)</div>
</td>
<td>
<a href="https://www.br.de/">
<span>www.br.de</span>
</a>
</td>
<td>&#160;</td>
<td>&#160;</td>
</tr>
<tr>
<td>
<code>BerlinerZeitung</code>
Expand Down
11 changes: 11 additions & 0 deletions src/fundus/publishers/de/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

from .berliner_zeitung import BerlinerZeitungParser
from .bild import BildParser
from .br import BRParser
from .braunschweiger_zeitung import BSZParser
from .business_insider_de import BusinessInsiderDEParser
from .die_welt import DieWeltParser
Expand Down Expand Up @@ -239,3 +240,13 @@ class DE(PublisherEnum):
],
parser=RheinischePostParser,
)

BR = PublisherSpec(
name="Bayerischer Rundfunk (BR)",
domain="https://www.br.de/",
sources=[
Sitemap("https://www.br.de/sitemapIndex.xml"),
NewsMap("https://www.br.de/nachrichten/sitemaps/news.xml"),
],
parser=BRParser,
)
51 changes: 51 additions & 0 deletions src/fundus/publishers/de/br.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
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 BRParser(ParserProxy):
class V1(BaseParser):
_summary_selector = XPath(
"//div[starts-with(@class, 'ArticleHeader_section')]//p[starts-with(@class, 'ArticleModuleTeaser_teaserText') or starts-with(@class, 'ArticleItemTeaserText_text')]"
)
# paragraph_selector captures div contents for full article, p for teaser-only flash articles
_paragraph_selector = XPath("(//div[starts-with(@class, 'ArticleModuleText_content')])[1]//p")

_subheadline_selector = XPath(
"//section[starts-with(@class, 'ArticleModuleText_wrapper')]//div[starts-with(@class, 'ArticleModuleText_content')]//h2"
)

@attribute
def title(self) -> Optional[str]:
return title if isinstance(title := self.precomputed.ld.bf_search("headline"), str) else None

@attribute
def authors(self) -> List[str]:
return generic_author_parsing(self.precomputed.ld.bf_search("author"))

@attribute
def publishing_date(self) -> Optional[datetime.datetime]:
return generic_date_parsing(self.precomputed.ld.bf_search("datePublished"))

@attribute
def body(self) -> ArticleBody:
# TODO
MK2112 marked this conversation as resolved.
Show resolved Hide resolved
return extract_article_body_with_selector(
self.precomputed.doc,
summary_selector=self._summary_selector,
subheadline_selector=self._subheadline_selector,
paragraph_selector=self._paragraph_selector,
)

@attribute
def topics(self) -> List[str]:
return generic_topic_parsing(self.precomputed.ld.bf_search("keywords"))
59 changes: 59 additions & 0 deletions tests/resources/parser/test_data/de/BR.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
{
"V1": {
"authors": [
"Jasper Riemann",
"Barbara Schneider"
],
"body": {
"summary": [
"In Coburg hat die Landessynode der evangelischen Kirche in Bayern begonnen. Am ersten Sitzungstag haben auch Betroffene sexualisierter Gewalt gesprochen. Es ist klar: Ihnen geht die Aufarbeitung der Landeskirche vielerorts nicht weit genug."
],
"sections": [
{
"headline": [],
"paragraphs": [
"Gleich zu Beginn der bayerischen Landessynode gibt Präsidentin Annekathrin Preidel den Ton vor: \"Wir haben uns auch als Institution an unzählig vielen Menschen schuldig gemacht, weil Mechanismen von Verharmlosung, Vertuschung und Geheimhaltung sexualisierter Gewalt zugelassen wurden.\"",
"Vor drei Monaten wurde die sogenannte ForuM-Studie zu sexuellem Missbrauch in evangelischer Kirche und Diakonie veröffentlicht. Die Untersuchung spricht für den Zeitraum von 1946 bis 2020 von mindestens 2.225 Betroffenen und 1.259 mutmaßlichen Tätern. Nun beschäftigt die Studie das Kirchenparlament in Bayern: Was kann und was muss aus der Studie folgen?"
]
},
{
"headline": [
"Landesbischof zeigt sich beschämt über sexuellen Missbrauch"
],
"paragraphs": [
"\"Sexualisierte Gewalt darf keinen Platz in unserer Kirche haben\", sagte die Synodalpräsidentin. Und doch: Gewalt gab und gibt es weiterhin, räumte Landesbischof Christian Kopp in seinem Bericht an die Synode ein. Er schäme sich zutiefst dafür. Nun brauche es eine Kultur des Hinsehens. Unter anderem sagte er, dass zusammen mit der Diakonie Bayern gerade eine unabhängige regionale Aufarbeitungskommission vorbereitet werde. \"Es gilt, die betroffenen Personen zu hören, ihre Erfahrungen und Erlebnisse, ihre Wahrnehmungen, Analysen und auch ihre Forderungen. Ihr Leid, ihre Geschichten, ihre Perspektiven sind wichtig für unser Handeln\", so Kopp."
]
},
{
"headline": [
"Betroffenen geht Aufarbeitungswille vielerorts nicht weit genug"
],
"paragraphs": [
"Der Betroffenenvertreter Detlev Zander kritisierte auf der Landessynode, es sei längst noch nicht in allen Kirchengemeinden als notwendig angekommen, den Missbrauch aufzuarbeiten. \"Der Missbrauchsskandal in der evangelischen Kirche ist ein Genickschuss für die Institution\", so Zander. \"Ich höre immer wieder: 'Das Thema geht uns nichts an, warum kommt der schon wieder damit?'\"",
"Karin Krapp, eine weitere Betroffene und wie Detlev Zander im Beteiligungsforum der Evangelischen Kirche in Deutschland (EKD) engagiert, kritisierte die Reaktion der Kirchenleitung in Bayern auf die Veröffentlichung der ForuM-Studie. \"Gerade aus Bayern gab es um und zur Studie zahlreiche öffentliche Wortmeldungen. Mich haben viele davon stutzig gemacht. Stutzig, weil ich das Gefühl hatte, dass angefangen wurde zu reden, bevor die Studie überhaupt wahrgenommen werden konnte\", sagte Krapp und fügte hinzu: Es seien hier die gleichen Abwehrreaktionen sichtbar geworden, die die Studie zuvor beschrieben habe."
]
},
{
"headline": [
"Landessynode will Präventionsgesetz überarbeiten"
],
"paragraphs": [
"Zuletzt hatte sich Landesbischof Christian Kopp selbstkritisch zur Kommunikation nach der ForuM-Studie geäußert. In einem Interview wenige Wochen vor der Synode hatte er eingeräumt, zu schnell Interviews gegeben zu haben. Und Synodenpräsidentin Annekathrin Preidel sagte in Coburg, sie bedauere, dass es Missverständnisse gegeben habe. Preidel kündigte an, die Synode werde das 2020 verabschiedete Präventionsgesetz im Licht der Ergebnisse der ForuM-Studie überprüfen und gegebenenfalls überarbeiten.",
"Die Landessynode tagt zweimal im Jahr. Neben der ForuM-Studie zu sexualisierter Gewalt ist beim Frühjahrs-Treffen bis Donnerstag in Coburg ein weiteres Schwerpunkt-Thema der Klimaschutz, wie das Landeskirchenamt vorab mitteilte: Die Synode will ein Klimaschutzgesetz verabschieden und einen verbindlichen Klimaschutzplan festlegen."
]
}
]
},
"publishing_date": "2024-04-22 15:26:46.863186+00:00",
"title": "Evangelische Kirche: Landeskirche will Missbrauch aufarbeiten",
"topics": [
"Oberfranken",
"Kirche",
"sexualisierte Gewalt",
"Missbrauchsstudie",
"Evangelische Landessynode",
"Evangelische Kirche",
"Missbrauch"
]
}
}
Binary file not shown.
4 changes: 4 additions & 0 deletions tests/resources/parser/test_data/de/meta.info
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
{
"BR_2024_04_22.html.gz": {
"url": "https://www.br.de/nachrichten/bayern/evangelische-kirche-landeskirche-will-missbrauch-aufarbeiten,UAf9GNd",
"crawl_date": "2024-04-22 17:33:43.091856"
},
"BSZ_2024_01_29.html.gz": {
"url": "https://www.braunschweiger-zeitung.de/niedersachsen/article241536118/Heide-Park-Eroeffnungstermin-fuer-neue-Attraktion-steht-fest.html",
"crawl_date": "2024-01-29 19:29:19.952428"
Expand Down