Как сделать, чтобы парсило текст до определенного момента?

import requests
from lxml import etree
import lxml.html
import csv

def parse(url):
    api = requests.get(url)
    tree = lxml.html.document_fromstring(api.text)
    text_news = tree.xpath('//*[@id="newslist"]/div/div/div/div/a/span/text()')
    text_date = tree.xpath('//*[@id="newslist"]/div//*[@class="time"]/text()')
    print(text_news)
    print(text_date)

parse('https://24.kg')

Вот код, вот сайт который парсю https://24.kg

Я хочу спарсить заголовки новостей, и время этих новостей (на сайте все видно, посмотрите). Все выходит, но есть одно но, я хочу спарсить новости именно на сегодня, а у меня парсится текст и время и на сегодня, и на вчера. Как сделать так, чтобы парсило текст до определенного момента, т.е. не весь, а только на сегодня который?


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

Автор решения: Mr. JS

Если нужны новости только за сегодня, то все просто:

Начинайте парсинг вместо:

*[@id="newslist"]

с уровня блока:

div[@class="lineDate"]

первый такой по счету блок и будет требуемым, так как новости располагаются в хронологическом порядке.

→ Ссылка