Посмотрите в чем проблема.
Написал небольшой парсер. Сайт динамический поэтому нужно на него заходить для получения информации.
Работает 1 час примерно и вылетает.
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait import time import requests from selenium.webdriver.firefox.options import Options options = Options() options.headless = True serials = 0 def send_telegram(text: str): token = "5206239063:AAEHnaXjpFCeFB0FGRYNN0rQbQLR2MsGnsU" url = "https://api.telegram.org/bot" channel_id = "-1001418930581" url += token method = url + "/sendMessage" r = requests.post(method, data={ "chat_id": channel_id, "text": text }) if r.status_code != 200: raise Exception("post_text error") def scaning(): running = True while running: global serials dostup = requests.get("https://lotoclub.kz/") if dostup.ok: with webdriver.Firefox(options=options) as driver: WebDriverWait(driver, 20) driver.get("https://lotoclub.kz/") datas = driver.find_element(By.CLASS_NAME, "gmcard__tirage-list-left") datas2 = driver.find_element(By.CLASS_NAME, "gmcard__tirage-list-num") numb = int(datas.text[2:9]) if serials == numb: time.sleep(15) driver.quit() scaning() else: send_telegram(datas2.text) print(datas2.text) time.sleep(20) driver.quit() serials = numb else: driver.quit() scaning() scaning()
Задача у кода такая.
Зайти на сайт проверить если номер серии поменялся (номер розыгрыша) тогда отправить в телегу выпавшее число.
Сайт который отслеживаю - розыгрыш лото. Проходит примерно каждую минуту - полторы.
Поэтому нужно довольно часто обращаться к сайту.