alle 4 Ziehungen eingepflegt

This commit is contained in:
hubobel 2025-07-24 15:37:08 +02:00
parent f53ed8ec37
commit f88cd698a4

View file

@ -4,17 +4,6 @@ import re
from datetime import datetime from datetime import datetime
import pymysql import pymysql
wochentag = datetime.today().weekday()
jahr = datetime.now().year
wochentag = 5
if wochentag == 2:
a = "582"
elif wochentag == 5:
a = "581"
else:
quit()
telegram_chat_id = "322673713" telegram_chat_id = "322673713"
telegram_token ='680737840:AAEaa7Vxl_kZz_LWS1_S-lH6Eda7HXqu6Y4' telegram_token ='680737840:AAEaa7Vxl_kZz_LWS1_S-lH6Eda7HXqu6Y4'
@ -22,9 +11,58 @@ def notify_telegram(text):
params = {"parse_mode": "HTML", "chat_id": telegram_chat_id, "text": text} params = {"parse_mode": "HTML", "chat_id": telegram_chat_id, "text": text}
url = f"https://api.telegram.org/bot{telegram_token}/sendMessage" url = f"https://api.telegram.org/bot{telegram_token}/sendMessage"
requests.post(url, params=params) requests.post(url, params=params)
def Euro():
url = 'https://www.ard-text.de/mobil/583'
response = requests.get(url)
response.raise_for_status()
soup = BeautifulSoup(response.text, "html.parser")
ziffern = []
ZahlenEuro = {
'Freitag': {'Datum': '', 'Z1': '', 'Z2': '', 'Z3': '', 'Z4': '', 'Z5': '', 'Eurozahl1': '', 'Eurozahl2': ''},
'Dienstag': {'Datum': '', 'Z1': '', 'Z2': '', 'Z3': '', 'Z4': '', 'Z5': '', 'Eurozahl1': '', 'Eurozahl2': ''}}
Tag = 'Freitag'
for b in soup.find("p", string=lambda s: s and "freitag" in s.lower()):
ZahlenEuro[Tag]['Datum'] = b
tabelle = b.find_parent().find_next_sibling("table")
a = 1
for n in tabelle.find_all("td"):
c = (n.get_text(strip=True))
b = 'Z' + str(a)
ZahlenEuro[Tag][b] = int(c)
a = a + 1
for x in soup.find("p", string=lambda s: s and "eurozahlen" in s.lower()):
eurotabelle = x.find_parent().find_next_sibling("table")
aa = 1
for m in eurotabelle.find_all("td"):
c = (m.get_text(strip=True))
bb = 'Eurozahl' + str(aa)
ZahlenEuro[Tag][bb] = int(c)
aa = aa + 1
Tag = 'Dienstag'
for b in soup.find("p", string=lambda s: s and "dienstag" in s.lower()):
ZahlenEuro[Tag]['Datum'] = b
tabelle = b.find_parent().find_next_sibling("table")
a = 1
print(b)
for n in tabelle.find_all("td"):
c = (n.get_text(strip=True))
b = 'Z' + str(a)
ZahlenEuro[Tag][b] = int(c)
a = a + 1
eurozahlen_tags = soup.find_all("b", string=lambda s: s and "eurozahlen" in s.lower())
# Ziel-URL (ARDTeletext Mobilseite 581) aa = 1
if len(eurozahlen_tags) >= 2:
eurozahlen_table_2 = eurozahlen_tags[1].find_next("table")
eurozahlen_2 = [td.text.strip() for td in eurozahlen_table_2.find_all("td")]
for i in eurozahlen_2:
bb = 'Eurozahl' + str(aa)
ZahlenEuro[Tag][bb] = int(i)
aa = aa + 1
return ZahlenEuro
def Normalziehung(a):
wochentag = datetime.today().weekday()
jahr = datetime.now().year
url = "https://www.ard-text.de/mobil/" + str(a) url = "https://www.ard-text.de/mobil/" + str(a)
@ -32,7 +70,6 @@ headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36" "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36"
} }
response = requests.get(url, headers=headers) response = requests.get(url, headers=headers)
response.raise_for_status() response.raise_for_status()
@ -77,11 +114,7 @@ if match_super6:
super6 = [int(n) for n in match_super6.group(1).split()] super6 = [int(n) for n in match_super6.group(1).split()]
# Ausgabe # Ausgabe
print("Datum / Woche:", str(jahr) + ' / ' + str(datum_woche))
print("Gezogene Lottozahlen (6 aus 49):", lottozahlen)
print("Superzahl:", superzahl)
print("Spiel 77:", spiel77)
print("Super 6 :", super6)
lottozahlen.sort() lottozahlen.sort()
ab = 'Z' ab = 'Z'
@ -94,7 +127,7 @@ for i in spiel77:
game77 = game77 + str(i) game77 = game77 + str(i)
for i in lottozahlen: for i in lottozahlen:
print(i)
ef = str((ab + str(cd))) ef = str((ab + str(cd)))
Lottozahlen[ef] = i Lottozahlen[ef] = i
cd = cd + 1 cd = cd + 1
@ -102,8 +135,11 @@ Lottozahlen['Datum'] = str(jahr) + ' / ' + str(datum_woche)
Lottozahlen['Superzahl'] = superzahl Lottozahlen['Superzahl'] = superzahl
Lottozahlen['Spiel77'] = int(game77) Lottozahlen['Spiel77'] = int(game77)
Lottozahlen['Super6'] = int(subber6) Lottozahlen['Super6'] = int(subber6)
print(Lottozahlen)
data = Lottozahlen
return Lottozahlen
def SQLnorm(data):
connection = pymysql.connect(db="hubobel", connection = pymysql.connect(db="hubobel",
user="hubobel", user="hubobel",
passwd="polier2003", passwd="polier2003",
@ -122,5 +158,64 @@ if resp == 0:
connection.commit() connection.commit()
cursor.close() cursor.close()
connection.close() connection.close()
def SQLdienstag(data):
connection = pymysql.connect(db="hubobel",
user="hubobel",
passwd="polier2003",
host='10.0.1.123', charset='utf8')
cursor = connection.cursor()
notify_telegram(str(Lottozahlen))
sql = "INSERT INTO `euro`(`datum`, `z1`, `z2`, `z3`, `z4`, `z5`, `sz1`, `sz2`) VALUES" \
" ('" + str(data['Datum']) + "','" + str(data['Z1']) + "','" + str(data['Z2']) + "','" + str(data['Z3']) + \
"','" + str(data['Z4']) + "','" + str(data['Z5']) + "','" + str(data['Eurozahl1']) + "','" + str(
data['Eurozahl2']) + "')"
sql_q = "SELECT * FROM euro WHERE datum like '%" + data['Datum'] + "%'"
resp = cursor.execute(sql_q)
if resp == 0:
cursor.execute(sql)
print(resp)
connection.commit()
cursor.close()
connection.close()
def SQLfreitag(data):
connection = pymysql.connect(db="hubobel",
user="hubobel",
passwd="polier2003",
host='10.0.1.123', charset='utf8')
cursor = connection.cursor()
sql = "INSERT INTO `euro`(`datum`, `z1`, `z2`, `z3`, `z4`, `z5`, `sz1`, `sz2`) VALUES" \
" ('" + str(data['Datum']) + "','" + str(data['Z1']) + "','" + str(data['Z2']) + "','" + str(data['Z3']) + \
"','" + str(data['Z4']) + "','" + str(data['Z5']) + "','" + str(data['Eurozahl1']) + "','" + str(
data['Eurozahl2']) + "')"
sql_q = "SELECT * FROM euro WHERE datum like '%" + data['Datum'] + "%'"
resp = cursor.execute(sql_q)
if resp == 0:
cursor.execute(sql)
print(resp)
connection.commit()
cursor.close()
connection.close()
wochentag = datetime.today().weekday()
wochentag = 1
if wochentag == 2:
Zahl = Normalziehung(582)
SQLnorm(Zahl)
notify_telegram(str(Zahl))
elif wochentag == 5:
Zahl = Normalziehung(581)
SQLnorm(Zahl)
notify_telegram(str(Zahl))
elif wochentag == 1:
Zahl = Euro()
SQLdienstag(Zahl['Dienstag'])
notify_telegram(str(Zahl['Dienstag']))
elif wochentag == 4:
Zahl = Euro()
SQLfreitag(Zahl['Freitag'])
notify_telegram(str(Zahl['Freitag']))
else:
quit()