Skip to content

Commit 23e831e

Browse files
authored
Merge pull request #669 from bbr111/master
Add Schweinfurth, Germany
2 parents 292067c + 405834f commit 23e831e

File tree

4 files changed

+120
-1
lines changed

4 files changed

+120
-1
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ Waste collection schedules in the following formats and countries are supported.
186186
- [Rhein-Hunsrück Entsorgung (RHE)](/doc/source/rh_entsorgung_de.md) / rh-entsorgung.de
187187
- [Rhein-Neckar-Kreis](/doc/source/abfall_io.md) / rhein-neckar-kreis.de
188188
- [Sector 27 - Datteln, Marl, Oer-Erkenschwick](/doc/source/sector27_de.md) / muellkalender.sector27.de
189+
- [Schweinfurt](/doc/source/schweinfurt_de.md) / schweinfurt.de
189190
- [Stadt Aachen](/doc/source/abfallnavi_de.md) / aachen.de
190191
- [Stadt Cottbus](/doc/source/abfallnavi_de.md) / cottbus.de
191192
- [Stadt Dorsten](/doc/source/abfallnavi_de.md) / ebd-dorsten.de
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
from datetime import datetime
2+
from datetime import timedelta
3+
import logging
4+
from waste_collection_schedule import Collection # type: ignore[attr-defined]
5+
import requests
6+
from bs4 import BeautifulSoup
7+
8+
TITLE = "Schweinfurt"
9+
DESCRIPTION = "Source for Schweinfurth, Germany"
10+
URL = "https://www.schweinfurt.de/leben-freizeit/umwelt/abfallwirtschaft/4427.Aktuelle-Abfuhrtermine-und-Muellkalender.html"
11+
TEST_CASES = {
12+
"TestcaseI": {"address": "Ahornstrasse"},
13+
"TestcaseII": {"address": "Ahornstrasse", "showmobile": "True"}
14+
}
15+
_LOGGER = logging.getLogger(__name__)
16+
17+
class Source:
18+
def __init__(self, address, showmobile=False):
19+
self._address = address
20+
self._showmobile = showmobile
21+
22+
def fetch(self):
23+
headers = {
24+
'referer': URL
25+
}
26+
27+
s = requests.session()
28+
r = s.get(URL)
29+
soup = BeautifulSoup(r.text, "html.parser")
30+
31+
for tag in soup.find_all("option"):
32+
if self._address in tag.text:
33+
#print (tag.text, tag.get('value'))
34+
now = datetime.now()
35+
nex = now + timedelta(days=365)
36+
params = {
37+
"_func":"evList",
38+
"_mod":"events",
39+
"ev[start]":now.strftime("%Y-%m-%d"),
40+
"ev[end]":nex.strftime("%Y-%m-%d"),
41+
"ev[addr]":tag.get('value'),
42+
}
43+
44+
try:
45+
params
46+
except:
47+
raise Exception("Address not found")
48+
return[]
49+
50+
if params:
51+
r = s.get(URL, params=params, headers=headers)
52+
53+
data = r.json()
54+
55+
s.close()
56+
57+
entries = []
58+
for entry in data['contents']:
59+
if "Wertstoffhof" not in data['contents'][entry]['title'] or self._showmobile:
60+
#print ( data['contents'][entry]['start'], data['contents'][entry]['end'],data['contents'][entry]['title'])
61+
entries.append(
62+
Collection( datetime.strptime(data['contents'][entry]['start'], '%Y-%m-%d %H:%M:%S').date(),
63+
data['contents'][entry]['title']
64+
)
65+
)
66+
return entries

doc/source/schweinfurt.md

+52
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# Schweinfurt
2+
3+
Support for schedules provided by [Schweinfurt](https://www.schweinfurt.de/leben-freizeit/umwelt/abfallwirtschaft/4427.Aktuelle-Abfuhrtermine-und-Muellkalender.html), Germany.
4+
5+
## Configuration via configuration.yaml
6+
7+
```yaml
8+
waste_collection_schedule:
9+
sources:
10+
- name: schweinfurt_de
11+
args:
12+
address: ADDRESS
13+
showmobile: SHOWMOBILE
14+
```
15+
16+
### Configuration Variables
17+
18+
**address**
19+
*(string) (required)*
20+
21+
**showmobile** (default=false)
22+
*(bool) (optional)* case-sensitive
23+
24+
## Example
25+
26+
27+
```yaml
28+
waste_collection_schedule:
29+
sources:
30+
- name: schweinfurt_de
31+
args:
32+
address: "Ahornstrasse"
33+
showmobile: "True"
34+
```
35+
36+
parameter showmobile is optional
37+
```yaml
38+
waste_collection_schedule:
39+
sources:
40+
- name: schweinfurt_de
41+
args:
42+
address: "Ahornstrasse"
43+
showmobile: "False"
44+
```
45+
46+
## How to get the source arguments
47+
48+
1. Go to your calendar at [Schweinfurt - Abfallkalender](https://www.schweinfurt.de/leben-freizeit/umwelt/abfallwirtschaft/4427.Aktuelle-Abfuhrtermine-und-Muellkalender.html)
49+
2. Enter your street and housenumber
50+
3. Copy the exact values from the textboxes street in the source configuration.
51+
52+
Use the showmobile parameter to include schedules for "Mobiler Wertstoffhof"

info.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Waste collection schedules from service provider web sites are updated daily, de
2020
| Austria | Burgenländischer Müllverband, infeo, Stadtservice Korneuburg, Umweltprofis, WSZ Moosburg |
2121
| Belgium | Hygea, Recycle! |
2222
| Canada | City of Toronto |
23-
| Germany | Abfall Stuttgart, Abfall-Wirtschafts-Verband Nordschwaben, Abfall.IO / AbfallPlus, Abfallbewirtschaftung Ostalbkreis, Abfallkalender Würzburg, AbfallNavi (RegioIT.de), Abfalltermine Forchheim, Abfallwirtschaft Alb-Donau-Kreis, Abfallwirtschaft Lahn-Dill-Kreises, Abfallwirtschaft Landkreis Böblingen, Abfallwirtschaft Landkreis Freudenstadt, Abfallwirtschaft Landkreis Harburg, Abfallwirtschaft Landkreis Kitzingen, Abfallwirtschaft Landkreis Landsberg am Lech, Abfallwirtschaft Landkreis Wolfenbüttel, Abfallwirtschaft Neckar-Odenwald-Kreis, Abfallwirtschaft Nürnberger Land, Abfallwirtschaft Ortenaukreis, Abfallwirtschaft Rems-Murr, Abfallwirtschaft Rendsburg, Abfallwirtschaft Stadt Fürth, Abfallwirtschaft Stadt Nürnberg, Abfallwirtschaft Südholstein, Abfallwirtschaft Werra-Meißner-Kreis, Abfallwirtschaft Zollernalbkreis, Abfallwirtschafts-Zweckverband des Landkreises Hersfeld-Rotenburg, Abfallwirtschaftsbetrieb Bergisch Gladbach, Abfallwirtschaftsbetrieb Esslingen, Abfallwirtschaftsbetrieb Landkreis Ahrweiler, Abfallwirtschaftsbetrieb Landkreis Altenkirchen, ALBA Berlin, ART Trier, ASO Abfall-Service Osterholz, AWA Entsorgungs GmbH, AWB Bad Kreuznach, AWB Köln, AWB Landkreis Augsburg, AWB Landkreis Bad Dürkheim, AWB Landkreis Fürstenfeldbruck, AWB Landkreis Göppingen, AWB Oldenburg, AWB Westerwaldkreis, AWG Kreis Warendorf, AWIDO Online, Bergischer Abfallwirtschaftverbund, Berlin Recycling, Berliner Stadtreinigungsbetriebe, Bielefeld, Bogenschütz Entsorgung, Bremener Stadreinigung, Bürgerportal, C-Trace, Dillingen Saar, Dinslaken, EGN Abfallkalender, EGW Westmünsterland, Entsorgungsbetriebe Essen, Gemeinde Lindlar, Gemeinde Roetgen, Gemeinde Unterhaching, Göttinger Entsorgungsbetriebe, Gütersloh, Halver, Jumomind, KAEV Niederlausitz, Kreis Coesfeld, Kreis Heinsberg, Kreis Pinneberg, Kreiswirtschaftsbetriebe Goslar, KV Cochem-Zell, KWU Entsorgung Landkreis Oder-Spree, Landkreis Ansbach, Landkreis Bayreuth, Landkreis Berchtesgadener Land, Landkreis Calw, Landkreis Coburg, Landkreis Erding, Landkreis Erlangen-Höchstadt, Landkreis Gotha, Landkreis Günzburg, Landkreis Heilbronn, Landkreis Kelheim, Landkreis Kronach, Landkreis Limburg-Weilburg, Landkreis Nordwestmecklenburg, Landkreis Ostallgäu, Landkreis Rhön Grabfeld, Landkreis Rosenheim, Landkreis Rotenburg (Wümme), Landkreis Schweinfurt, Landkreis Schwäbisch Hall, Landkreis Sigmaringen, Landkreis Südliche Weinstraße, Landkreis Tirschenreuth, Landkreis Tübingen, Landkreis Wittmund, Landkreisbetriebe Neuburg-Schrobenhausen, Landratsamt Aichach-Friedberg, Landratsamt Dachau, Landratsamt Traunstein, Landratsamt Unterallgäu, Ludwigshafen am Rhein, MZV Biedenkopf, MüllALARM / Schönmackers, Müllmax, Neunkirchen Siegerland, Neustadt a.d. Waldnaab, Pullach im Isartal, RegioEntsorgung Städteregion Aachen, Rhein-Hunsrück Entsorgung (RHE), Rhein-Neckar-Kreis, Sector 27 - Datteln, Marl, Oer-Erkenschwick, Stadt Aachen, Stadt Cottbus, Stadt Dorsten, Stadt Kaufbeuren, Stadt Landshut, Stadt Memmingen, Stadt Norderstedt, Stadt Regensburg, Stadt Solingen, Stadt Unterschleißheim, Stadt Willich, Stadtreinigung Dresden, Stadtreinigung Hamburg, Stadtreinigung Leipzig, StadtService Brühl, STL Lüdenscheid, Städteservice Raunheim Rüsselsheim, Südbrandenburgischer Abfallzweckverband, WBO Wirtschaftsbetriebe Oberhausen, Wermelskirchen, WGV Recycling GmbH, Wolfsburger Abfallwirtschaft und Straßenreinigung, WZV Kreis Segeberg, Zweckverband Abfallwirtschaft Saale-Orla, Zweckverband München-Südost |
23+
| Germany | Abfall Stuttgart, Abfall-Wirtschafts-Verband Nordschwaben, Abfall.IO / AbfallPlus, Abfallbewirtschaftung Ostalbkreis, Abfallkalender Würzburg, AbfallNavi (RegioIT.de), Abfalltermine Forchheim, Abfallwirtschaft Alb-Donau-Kreis, Abfallwirtschaft Lahn-Dill-Kreises, Abfallwirtschaft Landkreis Böblingen, Abfallwirtschaft Landkreis Freudenstadt, Abfallwirtschaft Landkreis Harburg, Abfallwirtschaft Landkreis Kitzingen, Abfallwirtschaft Landkreis Landsberg am Lech, Abfallwirtschaft Landkreis Wolfenbüttel, Abfallwirtschaft Neckar-Odenwald-Kreis, Abfallwirtschaft Nürnberger Land, Abfallwirtschaft Ortenaukreis, Abfallwirtschaft Rems-Murr, Abfallwirtschaft Rendsburg, Abfallwirtschaft Stadt Fürth, Abfallwirtschaft Stadt Nürnberg, Abfallwirtschaft Südholstein, Abfallwirtschaft Werra-Meißner-Kreis, Abfallwirtschaft Zollernalbkreis, Abfallwirtschafts-Zweckverband des Landkreises Hersfeld-Rotenburg, Abfallwirtschaftsbetrieb Bergisch Gladbach, Abfallwirtschaftsbetrieb Esslingen, Abfallwirtschaftsbetrieb Landkreis Ahrweiler, Abfallwirtschaftsbetrieb Landkreis Altenkirchen, ALBA Berlin, ART Trier, ASO Abfall-Service Osterholz, AWA Entsorgungs GmbH, AWB Bad Kreuznach, AWB Köln, AWB Landkreis Augsburg, AWB Landkreis Bad Dürkheim, AWB Landkreis Fürstenfeldbruck, AWB Landkreis Göppingen, AWB Oldenburg, AWB Westerwaldkreis, AWG Kreis Warendorf, AWIDO Online, Bergischer Abfallwirtschaftverbund, Berlin Recycling, Berliner Stadtreinigungsbetriebe, Bielefeld, Bogenschütz Entsorgung, Bremener Stadreinigung, Bürgerportal, C-Trace, Dillingen Saar, Dinslaken, EGN Abfallkalender, EGW Westmünsterland, Entsorgungsbetriebe Essen, Gemeinde Lindlar, Gemeinde Roetgen, Gemeinde Unterhaching, Göttinger Entsorgungsbetriebe, Gütersloh, Halver, Jumomind, KAEV Niederlausitz, Kreis Coesfeld, Kreis Heinsberg, Kreis Pinneberg, Kreiswirtschaftsbetriebe Goslar, KV Cochem-Zell, KWU Entsorgung Landkreis Oder-Spree, Landkreis Ansbach, Landkreis Bayreuth, Landkreis Berchtesgadener Land, Landkreis Calw, Landkreis Coburg, Landkreis Erding, Landkreis Erlangen-Höchstadt, Landkreis Gotha, Landkreis Günzburg, Landkreis Heilbronn, Landkreis Kelheim, Landkreis Kronach, Landkreis Limburg-Weilburg, Landkreis Nordwestmecklenburg, Landkreis Ostallgäu, Landkreis Rhön Grabfeld, Landkreis Rosenheim, Landkreis Rotenburg (Wümme), Landkreis Schweinfurt, Landkreis Schwäbisch Hall, Landkreis Sigmaringen, Landkreis Südliche Weinstraße, Landkreis Tirschenreuth, Landkreis Tübingen, Landkreis Wittmund, Landkreisbetriebe Neuburg-Schrobenhausen, Landratsamt Aichach-Friedberg, Landratsamt Dachau, Landratsamt Traunstein, Landratsamt Unterallgäu, Ludwigshafen am Rhein, MZV Biedenkopf, MüllALARM / Schönmackers, Müllmax, Neunkirchen Siegerland, Neustadt a.d. Waldnaab, Pullach im Isartal, RegioEntsorgung Städteregion Aachen, Rhein-Hunsrück Entsorgung (RHE), Rhein-Neckar-Kreis, Sector 27 - Datteln, Marl, Oer-Erkenschwick, Schweinfurt, Stadt Aachen, Stadt Cottbus, Stadt Dorsten, Stadt Kaufbeuren, Stadt Landshut, Stadt Memmingen, Stadt Norderstedt, Stadt Regensburg, Stadt Solingen, Stadt Unterschleißheim, Stadt Willich, Stadtreinigung Dresden, Stadtreinigung Hamburg, Stadtreinigung Leipzig, StadtService Brühl, STL Lüdenscheid, Städteservice Raunheim Rüsselsheim, Südbrandenburgischer Abfallzweckverband, WBO Wirtschaftsbetriebe Oberhausen, Wermelskirchen, WGV Recycling GmbH, Wolfsburger Abfallwirtschaft und Straßenreinigung, WZV Kreis Segeberg, Zweckverband Abfallwirtschaft Saale-Orla, Zweckverband München-Südost |
2424
| Lithuania | Kauno švara |
2525
| Netherlands | ACV Group, Alpen an den Rijn, Area Afval, Avalex, Avri, Bar Afvalbeheer, Circulus, Cyclus NV, Dar, Den Haag, GAD, Gemeente Almere, Gemeente Berkelland, Gemeente Cranendonck, Gemeente Hellendoorn, Gemeente Lingewaard, Gemeente Meppel, Gemeente Middelburg + Vlissingen, Gemeente Peel en Maas, Gemeente Schouwen-Duiveland, Gemeente Sudwest-Fryslan, Gemeente Venray, Gemeente Voorschoten, Gemeente Wallre, Gemeente Westland, HVC Groep, Meerlanden, Mijn Blink, PreZero, Purmerend, RAD BV, Reinigingsbedrijf Midden Nederland, Reinis, Spaarne Landen, Stadswerk 072, Twente Milieu, Waardlanden, Ximmio, ZRD |
2626
| New Zealand | Auckland Council, Christchurch City Council, Gore, Invercargill & Southland, Horowhenua District Council, Waipa District Council, Wellington City Council |

0 commit comments

Comments
 (0)