From 7b0f37c194d5aabe0b92889b9a9184b4a698491a Mon Sep 17 00:00:00 2001 From: Kieran Murphy Date: Sun, 15 Oct 2023 20:21:53 +1100 Subject: [PATCH 1/4] Added support for Shellharbour City council, Australia --- README.md | 1 + .../source/shellharbourwaste_com_au.py | 55 +++++++++++++++++++ doc/source/shellharbourwaste_com_au | 42 ++++++++++++++ 3 files changed, 98 insertions(+) create mode 100644 custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py create mode 100644 doc/source/shellharbourwaste_com_au diff --git a/README.md b/README.md index 7f37b9529..4234875c1 100644 --- a/README.md +++ b/README.md @@ -52,6 +52,7 @@ Waste collection schedules in the following formats and countries are supported. - [North Adelaide Waste Management Authority](/doc/source/nawma_sa_gov_au.md) / nawma.sa.gov.au - [Port Adelaide Enfield, South Australia](/doc/source/portenf_sa_gov_au.md) / ecouncil.portenf.sa.gov.au - [RecycleSmart](/doc/source/recyclesmart_com.md) / recyclesmart.com +- [Shellharbour City Council, New South Wales](/doc/source/shellharbourwaste_com_au) / shellharbourwaste.com.au - [Stonnington City Council](/doc/source/stonnington_vic_gov_au.md) / stonnington.vic.gov.au - [The Hills Shire Council, Sydney](/doc/source/thehills_nsw_gov_au.md) / thehills.nsw.gov.au - [Unley City Council (SA)](/doc/source/unley_sa_gov_au.md) / unley.sa.gov.au diff --git a/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py b/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py new file mode 100644 index 000000000..3f3573581 --- /dev/null +++ b/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py @@ -0,0 +1,55 @@ +from datetime import datetime +import requests +from bs4 import BeautifulSoup +from waste_collection_schedule import Collection + +TITLE = "Shellharbour City Council" +DESCRIPTION = "Source script for shellharbourwaste.com.au" +URL = "https://shellharbourwaste.com.au" +COUNTRY = "au" +TEST_CASES = { + "TestName1": {"zoneID": "Monday A"}, + "TestName2": {"zoneID": "Friday A"} + } + +API_URL = "https://www.shellharbourwaste.com.au/waste-collection" + +ICON_MAP = { + "Waste/Landfill": "mdi:trash-can", + "FOGO": "mdi:leaf", + "Recycling": "mdi:recycle", +} + +def findUrl(zoneID): + # Take Zone ID and find url to parse + r=requests.get(f'https://www.shellharbourwaste.com.au/wp-json/rb_co/v1/get-waste-url?zone={zoneID}') + r.raise_for_status + d=r.json() + return d['url'] + +class Source: + def __init__(self, zoneID): + self._zoneID = zoneID + + def fetch(self): + data = { + "Referer": "https://www.shellharbourwaste.com.au/find-my-bin-day/" + } + pageurl=findUrl(self._zoneID) + r = requests.get(f"{pageurl}", data=data) + r.raise_for_status() + soup = BeautifulSoup(r.content, 'html.parser') + collections=soup.select('div.waste-block__content') + entries = [] + for entry in collections: + waste_type = entry.find("h3", class_="waste-block__title").text + date_string = entry.find("time", class_="waste-block__time").text.strip() + pickupdate = datetime.strptime(date_string, "%d/%m/%Y") + entries.append( + Collection( + date=pickupdate.date(), + t=waste_type, + icon=ICON_MAP.get(waste_type), + ) + ) + return entries \ No newline at end of file diff --git a/doc/source/shellharbourwaste_com_au b/doc/source/shellharbourwaste_com_au new file mode 100644 index 000000000..f67a2af40 --- /dev/null +++ b/doc/source/shellharbourwaste_com_au @@ -0,0 +1,42 @@ +# Shellharbour City Council + +Support for schedules provided by [Shellharbour City council](https://www.shellharbourwaste.com.au/), serving Shellharbour City Council in the Illawara, New South Wales, Australia + +## Configuration via configuration.yaml + +```yaml +waste_collection_schedule: + sources: + - name: shellharbourwaste_com_au + args: + zoneID: ZONE_ID +``` + +### Configuration Variables + +**zoneID** +*(string) (mandatory)* + +### How to find your calendarID + +Go to +Put in your address, and click Search. + +The site will list the Zone eg: Monday A. + +This is the zoneID + +Another way is to look for your address in the KML provided by the shellharbourwaste website. +https://www.shellharbourwaste.com.au/wp-content/uploads/2022/12/Untitled-map-1.kml + +This KML has polygons that define the various zones. + +## Example + +```yaml +waste_collection_schedule: + sources: + - name: shellharbourwaste_com_au + args: + zoneID: Monday A +``` From 3704a21848faa8649e21823676710d4df1452dbf Mon Sep 17 00:00:00 2001 From: Kieran Murphy Date: Sun, 15 Oct 2023 20:26:25 +1100 Subject: [PATCH 2/4] Added support for Shellharbour City council, Australia --- info.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/info.md b/info.md index 591616469..22f09b965 100644 --- a/info.md +++ b/info.md @@ -16,7 +16,7 @@ Waste collection schedules from service provider web sites are updated daily, de |--|--| | Generic | ICS / iCal files | | Static | User-defined dates or repeating date patterns | -| Australia | Armadale (Western Australia), Australian Capital Territory (ACT), Banyule City Council, Belmont City Council, Brisbane City Council, Campbelltown City Council (NSW), Cardinia Shire Council, City of Canada Bay Council, City of Kingston, City of Onkaparinga Council, Cumberland Council (NSW), Gold Coast City Council, Hume City Council, Inner West Council (NSW), Ipswich City Council, Ku-ring-gai Council, Lake Macquarie City Council, Logan City Council, Macedon Ranges Shire Council, Mansfield Shire Council, Maribyrnong Council, Maroondah City Council, Melton City Council, Nillumbik Shire Council, North Adelaide Waste Management Authority, Port Adelaide Enfield, South Australia, RecycleSmart, Stonnington City Council, The Hills Shire Council, Sydney, Unley City Council (SA), Whittlesea City Council, Wollongong City Council, Wyndham City Council, Melbourne | +| Australia | Armadale (Western Australia), Australian Capital Territory (ACT), Banyule City Council, Belmont City Council, Brisbane City Council, Campbelltown City Council (NSW), Cardinia Shire Council, City of Canada Bay Council, City of Kingston, City of Onkaparinga Council, Cumberland Council (NSW), Gold Coast City Council, Hume City Council, Inner West Council (NSW), Ipswich City Council, Ku-ring-gai Council, Lake Macquarie City Council, Logan City Council, Macedon Ranges Shire Council, Mansfield Shire Council, Maribyrnong Council, Maroondah City Council, Melton City Council, Nillumbik Shire Council, North Adelaide Waste Management Authority, Port Adelaide Enfield, South Australia, RecycleSmart, Shellharbour City Council, Stonnington City Council, The Hills Shire Council, Sydney, Unley City Council (SA), Whittlesea City Council, Wollongong City Council, Wyndham City Council, Melbourne | | Austria | Abfallverband Hollabrunn, Abfallverband Korneuburg, Abfallverband Schwechat, Abfallwirtschaft Stadt Krems, Abfallwirtschaft Stadt St Pölten, Altenmarkt an der Triesting, Andau, Apetlon, App CITIES, AWV Neunkirchen, AWV Wr. Neustadt, Bad Blumau, Bad Gleichenberg, Bad Loipersdorf, Bad Radkersburg, Bad Tatzmannsdorf, Bernstein, Bildein, Breitenbrunn am Neusiedler See, Breitenstein, Bromberg, Bruckneudorf, Buch - St. Magdalena, Burgau, Burgauberg-Neudauberg, Burgenländischer Müllverband, Dechantskirchen, Deutsch Goritz, Deutsch Jahrndorf, Deutsch Kaltenbrunn, Deutschkreutz, Die NÖ Umweltverbände, Dobl-Zwaring, Drasenhofen, Draßmarkt, Eberau, Eberndorf, Ebersdorf, Eberstein, Edelsbach bei Feldbach, Eggersdorf bei Graz, Eisenstadt, Fehring, Feistritz ob Bleiburg, Feldbach, Feldkirchen in Kärnten, Ferndorf, Frankenau-Unterpullendorf, Frauenkirchen, Freistadt, Fresach, Friedberg, Frohnleiten, Fürstenfeld, Gabersdorf, GABL, Gattendorf, GAUL Laa an der Thaya, GAUM Mistelbach, GDA Amstetten, Gemeindeverband Horn, Gols, Grafendorf bei Hartberg, Grafenschachen, Grafenstein, Gratkorn, Gratwein-Straßengel, Großwarasdorf, Großwilfersdorf, Gutenberg, GV Gmünd, GV Krems, GV Zwettl, GVA Baden, GVA Baden, GVA Lilienfeld, GVA Mödling, GVA Tulln, GVA Waidhofen/Thaya, GVU Bezirk Gänserndorf, GVU Melk, GVU Scheibbs, GVU Scheibbs, GVU St. Pölten, Güssing, Hagenberg im Mühlkreis, Hannersdorf, Hartberg, Heiligenkreuz, Heiligenkreuz am Waasen, Heimschuh, Hofstätten an der Raab, Horitschon, Horn, Hornstein, Hüttenberg, Ilz, infeo, Innsbrucker Kommunalbetriebe, Inzenhof, Jabing, Jagerberg, Kaindorf, Kaisersdorf, Kalsdorf bei Graz, Kapfenstein, Kemeten, Kirchberg an der Raab, Kittsee, Kleinmürbisch, Klingenbach, Klosterneuburg, Klöch, Kohfidisch, Korneuburg, Krensdorf, Laa an der Thaya, Lackenbach, Lackendorf, Langau, Langenrohr, Leithaprodersdorf, Leutschach an der Weinstraße, Lieboch, Litzelsdorf, Lockenhaus Marktgemeinde, Loipersbach im Burgenland, Mariasdorf, Markt Hartmannsdorf, Markt Neuhodis, Marz, Mattersburg, Meiseldorf, Melk, Mettersdorf am Saßbach, Miesenbach, Mischendorf, Mistelbach, Mitterdorf an der Raab, Mureck, Mönchhof, Mörbisch am See, Neudorf bei Parndorf, Neudörfl, Neufeld an der Leitha, Neusiedl am See, Neustift bei Güssing, Nickelsdorf, Oberpullendorf, Oberschützen, Oberwart, Oslip, Ottendorf an der Rittschein, Paldau, Pama, Pamhagen, Parndorf, Payerbach, Peggau, Pernegg an der Mur, Pernegg im Waldviertel, Pfarrwerfen, Pilgersdorf, Pinggau, Pinkafeld, Podersdorf am See, Poggersdorf, Potzneusiedl, Poysdorf, Pöchlarn, Raach am Hochgebirge, Radmer, Ragnitz, Raiding, Reichenau, Rohr bei Hartberg, Rudersdorf, Rust, Sankt Georgen an der Stiefing, Sankt Gilgen, Sankt Oswald bei Plankenwarth, Schrattenberg, Schwadorf, Schäffern, Schützen am Gebirge, Seiersberg-Pirka, Siegendorf, Sigleß, Sigmundsherberg, Sinabelkirchen, St. Andrä, St. Andrä am Zicksee, St. Anna am Aigen, St. Egyden am Steinfeld, St. Johann in der Haide, St. Lorenzen am Wechsel, St. Margarethen an der Raab, St. Margarethen im Burgenland, St. Peter - Freienstein, St. Peter am Ottersbach, St. Ruprecht an der Raab, St. Veit in der Südsteiermark, Stadt Salzburg, Stadtservice Korneuburg, Stegersbach, Steinbrunn, Steuerberg, Stinatz, Stiwoll, Stockerau, Straß in Steiermark, Söchau, Tadten, Tattendorf, Thal, Tieschen, Tobaj, Tulln an der Donau, Umweltprofis, Unterfrauenhaid, Unterkohlstätten, Unterlamm, Unterwart, Vasoldsberg, Vordernberg, Völkermarkt, Walpersbach, Weiden am See, Weitersfeld, Weiz, Weppersdorf, Werfenweng, Wies, Wiesen, Wiesfleck, Wiesmath, Wimpassing an der Leitha, Winden am See, Wolfau, Wolfsberg, Wolkersdorf im Weinviertel, WSZ Moosburg, Wulkaprodersdorf, Wörterberg, Zagersdorf, Zelking-Matzleinsdorf, Zillingtal, Zurndorf, Übelbach | | Belgium | Hygea, Limburg.net, Recycle! | | Canada | Calgary (AB), Calgary, AB, City of Edmonton, AB, City of Greater Sudbury, ON, London (ON), Ottawa, Canada, RM of Morris, MB, Strathcona County, ON, Toronto (ON), Waste Wise APPS | From 85cb8c93f46968d1ea0b16f6416725d231b64e5d Mon Sep 17 00:00:00 2001 From: Kieran Murphy Date: Sun, 15 Oct 2023 21:05:39 +1100 Subject: [PATCH 3/4] Fixed a few little bugs with Shellharbourwaste integration --- .../source/shellharbourwaste_com_au.py | 6 +++--- doc/source/shellharbourwaste_com_au | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py b/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py index 3f3573581..5a599c959 100644 --- a/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py +++ b/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py @@ -15,7 +15,7 @@ API_URL = "https://www.shellharbourwaste.com.au/waste-collection" ICON_MAP = { - "Waste/Landfill": "mdi:trash-can", + "Waste": "mdi:trash-can", "FOGO": "mdi:leaf", "Recycling": "mdi:recycle", } @@ -48,8 +48,8 @@ def fetch(self): entries.append( Collection( date=pickupdate.date(), - t=waste_type, - icon=ICON_MAP.get(waste_type), + t=waste_type.split("/")[0], + icon=ICON_MAP.get(waste_type.split("/")[0]), ) ) return entries \ No newline at end of file diff --git a/doc/source/shellharbourwaste_com_au b/doc/source/shellharbourwaste_com_au index f67a2af40..cf931b4c7 100644 --- a/doc/source/shellharbourwaste_com_au +++ b/doc/source/shellharbourwaste_com_au @@ -38,5 +38,5 @@ waste_collection_schedule: sources: - name: shellharbourwaste_com_au args: - zoneID: Monday A + zoneID: "Monday A" ``` From 046997a44cbeb446ef96e40ba0ce2524c2000d01 Mon Sep 17 00:00:00 2001 From: 5ila5 <5ila5@users.noreply.github.com> Date: Sun, 15 Oct 2023 16:05:12 +0200 Subject: [PATCH 4/4] renamed md + reformatting --- README.md | 3 +- .../source/shellharbourwaste_com_au.py | 38 +++++++++---------- ...ste_com_au => shellharbourwaste_com_au.md} | 0 info.md | 2 +- 4 files changed, 22 insertions(+), 21 deletions(-) rename doc/source/{shellharbourwaste_com_au => shellharbourwaste_com_au.md} (100%) diff --git a/README.md b/README.md index 4234875c1..10f4432a8 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,7 @@ Waste collection schedules in the following formats and countries are supported. - [Campbelltown City Council (NSW)](/doc/source/campbelltown_nsw_gov_au.md) / campbelltown.nsw.gov.au - [Cardinia Shire Council](/doc/source/cardinia_vic_gov_au.md) / cardinia.vic.gov.au - [City of Canada Bay Council](/doc/source/canadabay_nsw_gov_au.md) / canadabay.nsw.gov.au +- [City of Greater Geelong](/doc/source/geelongaustralia_com_au.md) / geelongaustralia.com.au - [City of Kingston](/doc/source/kingston_vic_gov_au.md) / kingston.vic.gov.au - [City of Onkaparinga Council](/doc/source/onkaparingacity_com.md) / onkaparingacity.com - [Cumberland Council (NSW)](/doc/source/cumberland_nsw_gov_au.md) / cumberland.nsw.gov.au @@ -52,7 +53,7 @@ Waste collection schedules in the following formats and countries are supported. - [North Adelaide Waste Management Authority](/doc/source/nawma_sa_gov_au.md) / nawma.sa.gov.au - [Port Adelaide Enfield, South Australia](/doc/source/portenf_sa_gov_au.md) / ecouncil.portenf.sa.gov.au - [RecycleSmart](/doc/source/recyclesmart_com.md) / recyclesmart.com -- [Shellharbour City Council, New South Wales](/doc/source/shellharbourwaste_com_au) / shellharbourwaste.com.au +- [Shellharbour City Council](/doc/source/shellharbourwaste_com_au.md) / shellharbourwaste.com.au - [Stonnington City Council](/doc/source/stonnington_vic_gov_au.md) / stonnington.vic.gov.au - [The Hills Shire Council, Sydney](/doc/source/thehills_nsw_gov_au.md) / thehills.nsw.gov.au - [Unley City Council (SA)](/doc/source/unley_sa_gov_au.md) / unley.sa.gov.au diff --git a/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py b/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py index 5a599c959..c1d780cc0 100644 --- a/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py +++ b/custom_components/waste_collection_schedule/waste_collection_schedule/source/shellharbourwaste_com_au.py @@ -1,4 +1,5 @@ from datetime import datetime + import requests from bs4 import BeautifulSoup from waste_collection_schedule import Collection @@ -7,10 +8,7 @@ DESCRIPTION = "Source script for shellharbourwaste.com.au" URL = "https://shellharbourwaste.com.au" COUNTRY = "au" -TEST_CASES = { - "TestName1": {"zoneID": "Monday A"}, - "TestName2": {"zoneID": "Friday A"} - } +TEST_CASES = {"TestName1": {"zoneID": "Monday A"}, "TestName2": {"zoneID": "Friday A"}} API_URL = "https://www.shellharbourwaste.com.au/waste-collection" @@ -20,36 +18,38 @@ "Recycling": "mdi:recycle", } + def findUrl(zoneID): # Take Zone ID and find url to parse - r=requests.get(f'https://www.shellharbourwaste.com.au/wp-json/rb_co/v1/get-waste-url?zone={zoneID}') + r = requests.get( + f"https://www.shellharbourwaste.com.au/wp-json/rb_co/v1/get-waste-url?zone={zoneID}" + ) r.raise_for_status - d=r.json() - return d['url'] + d = r.json() + return d["url"] + class Source: def __init__(self, zoneID): self._zoneID = zoneID - + def fetch(self): - data = { - "Referer": "https://www.shellharbourwaste.com.au/find-my-bin-day/" - } - pageurl=findUrl(self._zoneID) + data = {"Referer": "https://www.shellharbourwaste.com.au/find-my-bin-day/"} + pageurl = findUrl(self._zoneID) r = requests.get(f"{pageurl}", data=data) r.raise_for_status() - soup = BeautifulSoup(r.content, 'html.parser') - collections=soup.select('div.waste-block__content') + soup = BeautifulSoup(r.content, "html.parser") + collections = soup.select("div.waste-block__content") entries = [] for entry in collections: waste_type = entry.find("h3", class_="waste-block__title").text date_string = entry.find("time", class_="waste-block__time").text.strip() pickupdate = datetime.strptime(date_string, "%d/%m/%Y") entries.append( - Collection( - date=pickupdate.date(), - t=waste_type.split("/")[0], - icon=ICON_MAP.get(waste_type.split("/")[0]), + Collection( + date=pickupdate.date(), + t=waste_type.split("/")[0], + icon=ICON_MAP.get(waste_type.split("/")[0]), ) ) - return entries \ No newline at end of file + return entries diff --git a/doc/source/shellharbourwaste_com_au b/doc/source/shellharbourwaste_com_au.md similarity index 100% rename from doc/source/shellharbourwaste_com_au rename to doc/source/shellharbourwaste_com_au.md diff --git a/info.md b/info.md index 22f09b965..f1e2fbc48 100644 --- a/info.md +++ b/info.md @@ -16,7 +16,7 @@ Waste collection schedules from service provider web sites are updated daily, de |--|--| | Generic | ICS / iCal files | | Static | User-defined dates or repeating date patterns | -| Australia | Armadale (Western Australia), Australian Capital Territory (ACT), Banyule City Council, Belmont City Council, Brisbane City Council, Campbelltown City Council (NSW), Cardinia Shire Council, City of Canada Bay Council, City of Kingston, City of Onkaparinga Council, Cumberland Council (NSW), Gold Coast City Council, Hume City Council, Inner West Council (NSW), Ipswich City Council, Ku-ring-gai Council, Lake Macquarie City Council, Logan City Council, Macedon Ranges Shire Council, Mansfield Shire Council, Maribyrnong Council, Maroondah City Council, Melton City Council, Nillumbik Shire Council, North Adelaide Waste Management Authority, Port Adelaide Enfield, South Australia, RecycleSmart, Shellharbour City Council, Stonnington City Council, The Hills Shire Council, Sydney, Unley City Council (SA), Whittlesea City Council, Wollongong City Council, Wyndham City Council, Melbourne | +| Australia | Armadale (Western Australia), Australian Capital Territory (ACT), Banyule City Council, Belmont City Council, Brisbane City Council, Campbelltown City Council (NSW), Cardinia Shire Council, City of Canada Bay Council, City of Greater Geelong, City of Kingston, City of Onkaparinga Council, Cumberland Council (NSW), Gold Coast City Council, Hume City Council, Inner West Council (NSW), Ipswich City Council, Ku-ring-gai Council, Lake Macquarie City Council, Logan City Council, Macedon Ranges Shire Council, Mansfield Shire Council, Maribyrnong Council, Maroondah City Council, Melton City Council, Nillumbik Shire Council, North Adelaide Waste Management Authority, Port Adelaide Enfield, South Australia, RecycleSmart, Shellharbour City Council, Stonnington City Council, The Hills Shire Council, Sydney, Unley City Council (SA), Whittlesea City Council, Wollongong City Council, Wyndham City Council, Melbourne | | Austria | Abfallverband Hollabrunn, Abfallverband Korneuburg, Abfallverband Schwechat, Abfallwirtschaft Stadt Krems, Abfallwirtschaft Stadt St Pölten, Altenmarkt an der Triesting, Andau, Apetlon, App CITIES, AWV Neunkirchen, AWV Wr. Neustadt, Bad Blumau, Bad Gleichenberg, Bad Loipersdorf, Bad Radkersburg, Bad Tatzmannsdorf, Bernstein, Bildein, Breitenbrunn am Neusiedler See, Breitenstein, Bromberg, Bruckneudorf, Buch - St. Magdalena, Burgau, Burgauberg-Neudauberg, Burgenländischer Müllverband, Dechantskirchen, Deutsch Goritz, Deutsch Jahrndorf, Deutsch Kaltenbrunn, Deutschkreutz, Die NÖ Umweltverbände, Dobl-Zwaring, Drasenhofen, Draßmarkt, Eberau, Eberndorf, Ebersdorf, Eberstein, Edelsbach bei Feldbach, Eggersdorf bei Graz, Eisenstadt, Fehring, Feistritz ob Bleiburg, Feldbach, Feldkirchen in Kärnten, Ferndorf, Frankenau-Unterpullendorf, Frauenkirchen, Freistadt, Fresach, Friedberg, Frohnleiten, Fürstenfeld, Gabersdorf, GABL, Gattendorf, GAUL Laa an der Thaya, GAUM Mistelbach, GDA Amstetten, Gemeindeverband Horn, Gols, Grafendorf bei Hartberg, Grafenschachen, Grafenstein, Gratkorn, Gratwein-Straßengel, Großwarasdorf, Großwilfersdorf, Gutenberg, GV Gmünd, GV Krems, GV Zwettl, GVA Baden, GVA Baden, GVA Lilienfeld, GVA Mödling, GVA Tulln, GVA Waidhofen/Thaya, GVU Bezirk Gänserndorf, GVU Melk, GVU Scheibbs, GVU Scheibbs, GVU St. Pölten, Güssing, Hagenberg im Mühlkreis, Hannersdorf, Hartberg, Heiligenkreuz, Heiligenkreuz am Waasen, Heimschuh, Hofstätten an der Raab, Horitschon, Horn, Hornstein, Hüttenberg, Ilz, infeo, Innsbrucker Kommunalbetriebe, Inzenhof, Jabing, Jagerberg, Kaindorf, Kaisersdorf, Kalsdorf bei Graz, Kapfenstein, Kemeten, Kirchberg an der Raab, Kittsee, Kleinmürbisch, Klingenbach, Klosterneuburg, Klöch, Kohfidisch, Korneuburg, Krensdorf, Laa an der Thaya, Lackenbach, Lackendorf, Langau, Langenrohr, Leithaprodersdorf, Leutschach an der Weinstraße, Lieboch, Litzelsdorf, Lockenhaus Marktgemeinde, Loipersbach im Burgenland, Mariasdorf, Markt Hartmannsdorf, Markt Neuhodis, Marz, Mattersburg, Meiseldorf, Melk, Mettersdorf am Saßbach, Miesenbach, Mischendorf, Mistelbach, Mitterdorf an der Raab, Mureck, Mönchhof, Mörbisch am See, Neudorf bei Parndorf, Neudörfl, Neufeld an der Leitha, Neusiedl am See, Neustift bei Güssing, Nickelsdorf, Oberpullendorf, Oberschützen, Oberwart, Oslip, Ottendorf an der Rittschein, Paldau, Pama, Pamhagen, Parndorf, Payerbach, Peggau, Pernegg an der Mur, Pernegg im Waldviertel, Pfarrwerfen, Pilgersdorf, Pinggau, Pinkafeld, Podersdorf am See, Poggersdorf, Potzneusiedl, Poysdorf, Pöchlarn, Raach am Hochgebirge, Radmer, Ragnitz, Raiding, Reichenau, Rohr bei Hartberg, Rudersdorf, Rust, Sankt Georgen an der Stiefing, Sankt Gilgen, Sankt Oswald bei Plankenwarth, Schrattenberg, Schwadorf, Schäffern, Schützen am Gebirge, Seiersberg-Pirka, Siegendorf, Sigleß, Sigmundsherberg, Sinabelkirchen, St. Andrä, St. Andrä am Zicksee, St. Anna am Aigen, St. Egyden am Steinfeld, St. Johann in der Haide, St. Lorenzen am Wechsel, St. Margarethen an der Raab, St. Margarethen im Burgenland, St. Peter - Freienstein, St. Peter am Ottersbach, St. Ruprecht an der Raab, St. Veit in der Südsteiermark, Stadt Salzburg, Stadtservice Korneuburg, Stegersbach, Steinbrunn, Steuerberg, Stinatz, Stiwoll, Stockerau, Straß in Steiermark, Söchau, Tadten, Tattendorf, Thal, Tieschen, Tobaj, Tulln an der Donau, Umweltprofis, Unterfrauenhaid, Unterkohlstätten, Unterlamm, Unterwart, Vasoldsberg, Vordernberg, Völkermarkt, Walpersbach, Weiden am See, Weitersfeld, Weiz, Weppersdorf, Werfenweng, Wies, Wiesen, Wiesfleck, Wiesmath, Wimpassing an der Leitha, Winden am See, Wolfau, Wolfsberg, Wolkersdorf im Weinviertel, WSZ Moosburg, Wulkaprodersdorf, Wörterberg, Zagersdorf, Zelking-Matzleinsdorf, Zillingtal, Zurndorf, Übelbach | | Belgium | Hygea, Limburg.net, Recycle! | | Canada | Calgary (AB), Calgary, AB, City of Edmonton, AB, City of Greater Sudbury, ON, London (ON), Ottawa, Canada, RM of Morris, MB, Strathcona County, ON, Toronto (ON), Waste Wise APPS |