From 3edc32e98eee0ababb36b7f9077df4169ec9ab6f Mon Sep 17 00:00:00 2001 From: Markus Zimmerberger Date: Sun, 16 Feb 2025 14:10:11 +0100 Subject: [PATCH] Separate crawlers --- crawler_bestattung-wels.py | 20 +++++++++++++++++++ crawler_bestatung-aichinger.py | 35 ++++++++++++++++++++++++++++++++++ main.py | 20 ------------------- 3 files changed, 55 insertions(+), 20 deletions(-) create mode 100644 crawler_bestattung-wels.py create mode 100644 crawler_bestatung-aichinger.py diff --git a/crawler_bestattung-wels.py b/crawler_bestattung-wels.py new file mode 100644 index 0000000..cdc837e --- /dev/null +++ b/crawler_bestattung-wels.py @@ -0,0 +1,20 @@ +import requests +from bs4 import BeautifulSoup + +URL = "https://www.bestattung-wels.at/current-deaths/" +page = requests.get(URL) + +soup = BeautifulSoup(page.content, "html.parser") +death_table = soup.find("table", attrs={"class": "death-table"}) + +death_table_data = death_table.find_all("tr") +for row in death_table_data: + cols = row.find_all('td') + cols = [ele.text.strip() for ele in cols] + print(cols) # This will print each row as a list + +#for death in death_table_data: +# print(death.full-name.text) + +#results = soup.findAll({"id" : lambda L: L and L.startswith('death-row-')}) +results = soup.find("death-table-body") \ No newline at end of file diff --git a/crawler_bestatung-aichinger.py b/crawler_bestatung-aichinger.py new file mode 100644 index 0000000..b0aa257 --- /dev/null +++ b/crawler_bestatung-aichinger.py @@ -0,0 +1,35 @@ +import requests +from bs4 import BeautifulSoup + +URL = "https://www.bestattung-aichinger.at/traueranzeigen--5683197-de.html" +page = requests.get(URL) + +soup = BeautifulSoup(page.content, "html.parser") +death_table = soup.find("ul", attrs={"class": "homepage_unterseiten_layout_todesanzeigen"}) + +death_table_data = death_table.find_all("li") +for row in death_table_data: + date_span = row.find('span', class_='homepage_unterseiten_layout_datum') + date_death = date_span.text.replace('†', '').strip() if date_span else None + + title_span = row.find('span', class_='homepage_unterseiten_layout_titel') + + if title_span: + title_text = title_span.get_text(separator='\n') + title_parts = title_text.split('\n') + title_left = title_parts[0].strip() if len(title_parts) > 0 else None + title_right = title_parts[1].strip() if len(title_parts) > 1 else None + else: + title_left = title_right = None + + print(date_death, title_left, title_right) + + # cols = row.find_all('homepage_unterseiten_layout_datum') + # cols = [ele.text.strip() for ele in cols] + # print(cols) # This will print each row as a list + +#for death in death_table_data: +# print(death.full-name.text) + +#results = soup.findAll({"id" : lambda L: L and L.startswith('death-row-')}) +results = soup.find("death-table-body") \ No newline at end of file diff --git a/main.py b/main.py index cdc837e..e69de29 100644 --- a/main.py +++ b/main.py @@ -1,20 +0,0 @@ -import requests -from bs4 import BeautifulSoup - -URL = "https://www.bestattung-wels.at/current-deaths/" -page = requests.get(URL) - -soup = BeautifulSoup(page.content, "html.parser") -death_table = soup.find("table", attrs={"class": "death-table"}) - -death_table_data = death_table.find_all("tr") -for row in death_table_data: - cols = row.find_all('td') - cols = [ele.text.strip() for ele in cols] - print(cols) # This will print each row as a list - -#for death in death_table_data: -# print(death.full-name.text) - -#results = soup.findAll({"id" : lambda L: L and L.startswith('death-row-')}) -results = soup.find("death-table-body") \ No newline at end of file