fix muellmax wizard

This commit is contained in:
5ila5
2024-08-21 10:52:17 +02:00
committed by 5ila5
parent 54f98b8bc4
commit ae58843ee7

View File

@@ -12,6 +12,10 @@ package_dir = Path(__file__).resolve().parents[2]
site.addsitedir(str(package_dir))
from waste_collection_schedule.service.MuellmaxDe import SERVICE_MAP # type: ignore # isort:skip # noqa: E402
HEADERS = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}
# Parser for HTML input (hidden) text
class InputTextParser(HTMLParser):
@@ -115,12 +119,12 @@ def main():
mm_ses = InputTextParser(type="hidden", name="mm_ses")
url = f"https://www.muellmax.de/abfallkalender/{answers['service'].lower()}/res/{answers['service']}Start.php"
r = requests.get(url)
r = requests.get(url, headers=HEADERS)
mm_ses.feed(r.text)
# select "Abfuhrtermine", returns ort or an empty street search field
args = {"mm_ses": mm_ses.value, "mm_aus_ort.x": 0, "mm_aus_ort.x": 0}
r = requests.post(url, data=args)
r = requests.post(url, data=args, headers=HEADERS)
mm_ses.feed(r.text)
# check if last request returns a list of cities
@@ -143,7 +147,7 @@ def main():
"mm_frm_ort_sel": answers["mm_frm_ort_sel"],
"mm_aus_ort_submit": "weiter",
}
r = requests.post(url, data=args)
r = requests.post(url, data=args, headers=HEADERS)
mm_ses.feed(r.text)
# get list of streets
@@ -153,11 +157,12 @@ def main():
"mm_frm_str_name": "",
"mm_aus_str_txt_submit": "suchen",
}
r = requests.post(url, data=args)
r = requests.post(url, data=args, headers=HEADERS)
mm_ses.feed(r.text)
mm_frm_str_sel = InputSelectParser(name="mm_frm_str_sel")
mm_frm_str_sel.feed(r.text)
print(mm_frm_str_sel.choices)
# select street
questions = [
@@ -175,7 +180,7 @@ def main():
"mm_frm_str_sel": answers["mm_frm_str_sel"],
"mm_aus_str_sel_submit": "weiter",
}
r = requests.post(url, data=args)
r = requests.post(url, data=args, headers=HEADERS)
mm_ses.feed(r.text)
mm_frm_hnr_sel = InputSelectParser(name="mm_frm_hnr_sel")