mirror of
https://github.com/sascha-hemi/hacs_waste_collection_schedule.git
synced 2026-03-21 05:06:33 +01:00
add zva-wmk
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
import requests
|
||||
import datetime
|
||||
from waste_collection_schedule import Collection # type: ignore[attr-defined]
|
||||
from waste_collection_schedule.service.ICS import ICS
|
||||
|
||||
import urllib
|
||||
|
||||
TITLE = "Zweckverband Abfallwirtschaft Werra-Meißner-Kreis"
|
||||
DESCRIPTION = "Source for Zweckverband Abfallwirtschaft Werra-Meißner-Kreis"
|
||||
URL = "https://www.zva-wmk.de/"
|
||||
TEST_CASES = {
|
||||
"Frankenhain": {"city": "Berkatal - Frankenhain", "street": "Teichhof"},
|
||||
"Hebenshausen": {"city": "Neu-Eichenberg - Hebenshausen", "street": "Bachstraße"},
|
||||
"Vockerode": {"city": "Meißner - Vockerode", "street": "Feuerwehr"}
|
||||
}
|
||||
|
||||
|
||||
class Source:
|
||||
def __init__(self, city, street):
|
||||
self._city = city
|
||||
self._street = street
|
||||
self._ics = ICS(split_at=" / ")
|
||||
|
||||
def fetch(self):
|
||||
city = self._city.replace('ß', 'ẞ').upper()
|
||||
city = city.replace(" - ", "_")
|
||||
city = city.replace(" ", "+")
|
||||
city = city.replace("ẞ", "ß")
|
||||
street = self._street
|
||||
street = street.replace(" ","+")
|
||||
today = datetime.date.today()
|
||||
year = today.year
|
||||
year = 2023
|
||||
if year == 2022:
|
||||
yearstr = ""
|
||||
street = self._street.upper()
|
||||
else:
|
||||
yearstr = ("-" + str(year))
|
||||
payload = {"city": city, "street": street}
|
||||
urlzva = "https://www.zva-wmk.de/termine/schnellsuche"+yearstr+"&type=all&link=ical×tart=6&fullday=1&timeend=17&reminder=1440&display=0"
|
||||
|
||||
r = requests.get(urlzva, params=payload)
|
||||
|
||||
r.encoding = r.apparent_encoding
|
||||
dates = self._ics.convert(r.text)
|
||||
|
||||
entries = []
|
||||
for d in dates:
|
||||
entries.append(Collection(d[0], d[1]))
|
||||
return entries
|
||||
23
doc/source/zva_wmk_de.md
Normal file
23
doc/source/zva_wmk_de.md
Normal file
@@ -0,0 +1,23 @@
|
||||
# Zweckverband Abfallwirtschaft Werra-Meißner-Kreis
|
||||
Support für Werra-Meißner-Kreis located in Hesse, Germany
|
||||
|
||||
## Configuration via configuration.yaml
|
||||
|
||||
```yaml
|
||||
waste_collection_schedule:
|
||||
sources:
|
||||
- name: zva_wmk_de
|
||||
args:
|
||||
city: CITY
|
||||
street: STREET
|
||||
```
|
||||
|
||||
### Configuration Variables
|
||||
|
||||
**city**<br>
|
||||
*(string) (required)*
|
||||
|
||||
**street**<br>
|
||||
### How to get the source arguments
|
||||
|
||||
Visit [zva-wmk.de](https://www.zva-wmk.de/termine/schnellsuche-2023) and search for your locality. Use the value from the "Ort" dropdown as `city` argument and the one from "Ortsteil/Straße" as `street` as shown.
|
||||
Reference in New Issue
Block a user