From 3f5a7f2c2addc2066c2f102f91cb0c2f43280ca0 Mon Sep 17 00:00:00 2001 From: matthias Date: Fri, 3 Jan 2020 06:48:20 +0000 Subject: [PATCH] =?UTF-8?q?=E2=80=9Ebibcheck.py=E2=80=9C=20=C3=A4ndern?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bibcheck.py | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/bibcheck.py b/bibcheck.py index 78dbdf6..28e239f 100644 --- a/bibcheck.py +++ b/bibcheck.py @@ -26,20 +26,23 @@ def check(username, password): br['$Textfield$0'] = password response = br.submit() br.follow_link(text_regex=r"Konto") - response = br.follow_link(text_regex=r"Ausleihen? zeigen") - br.select_form('Form0') - response = br.submit(name='textButton$0', label='Alle verlängern') - lentlist = bs4.BeautifulSoup(response.read(), 'html.parser') - table = lentlist.select('table[class="rTable_table"]')[0] - allinfo = [] - for entry in table.tbody.select('tr'): - info = list(map(lambda x: str(x.text).strip(), entry.select('td'))) - date = datetime.datetime.strptime(info[1], '%d.%m.%Y') - delta = date - datetime.datetime.now() - allinfo.append(str(info)) + try: + response = br.follow_link(text_regex=r"Ausleihen? zeigen") + br.select_form('Form0') + response = br.submit(name='textButton$0', label='Alle verlängern') + lentlist = bs4.BeautifulSoup(response.read(), 'html.parser') + table = lentlist.select('table[class="rTable_table"]')[0] + allinfo = [] + for entry in table.tbody.select('tr'): + info = list(map(lambda x: str(x.text).strip(), entry.select('td'))) + date = datetime.datetime.strptime(info[1], '%d.%m.%Y') + delta = date - datetime.datetime.now() + allinfo.append(str(info)) - if delta.days <= 10 or delta.days == 20 or delta.days == 15: - pushover.Client('u5w9h8gc7hpzvr5a2kh2xh4m9zpidq').send_message('Bitte an {} denken, Abgabe {}'.format(info[3], info[1]), title="Erinnerung") + if delta.days <= 10 or delta.days == 20 or delta.days == 15: + pushover.Client('u5w9h8gc7hpzvr5a2kh2xh4m9zpidq').send_message('Bitte an {} denken, Abgabe {}'.format(info[3], info[1]), title="Erinnerung") + except StopIteration as se: + pushover.Client('u5w9h8gc7hpzvr5a2kh2xh4m9zpidq').send_message('nichts ausgeliehen') return allinfo if __name__ == "__main__":