как сделать чтобы парсер работал через определенное время

Вот, например, на сайте новое обьявление, и я хочу, чтобы он взял сразу эту информацию. Если что, все в таблице excel.

import requests
from bs4 import BeautifulSoup
import pandas as pd

url = "https://krisha.kz/arenda/kvartiry/almaty/"

response = requests.get(url).text
soup = BeautifulSoup(response, 'lxml')
check = soup.find_all('div', class_ = 'a-card__header')

results = []
for result in check:
    link = result.find('a', href=True)
    tex = result.text.strip()
    if link:
        lin = "https://krisha.kz" + link['href']
    results.append([tex, lin])

df = pd.DataFrame(results, columns=['Tex', 'Lin'])
df.to_excel('results.xlsx', index=False)

Ответы (1 шт):

Автор решения: Сонный кофеман

Что если сделать в цикле с задержкой примерно в минуту-две, сделать простую проверку старого контента который уже есть с новым на совпадение, и если они не совпадают, то парсить её.

import requests
import time
import pandas as pd
from bs4 import BeautifulSoup


url = "https://krisha.kz/arenda/kvartiry/almaty/"

response = requests.get(url).text
soup = BeautifulSoup(response, 'lxml')
check = soup.find_all('div', class_ = 'a-card__header')

def writeDate(data):
    df = pd.DataFrame(data, columns=['Tex', 'Lin'])
    df.to_excel('results.xlsx', index=False)

def checkOriginal(data1, data2):
    if data1 == data2:
        return True
    return False

while True:
    time.sleep(80)
    data = []
    results = []
    for result in check:
        link = result.find('a', href=True)
        tex = result.text.strip()
        if link:
            lin = "https://krisha.kz" + link['href']
        results.append([tex, lin])
    if not checkOriginal(data, results):
        writeDate(results)
        data = results
→ Ссылка