Sunil KK Ответов: 0

Как получить уведомление с помощью web scrapping - Python


Привет,

Я хочу использовать python web scrapping с помощью selenium и хочу получить уведомление, когда дата изменения содержимого будет изменена.

URL-АДРЕС : Система отчетности 2.9 - Европейское банковское управление[^]

на этом веб-сайте еженедельно и ежемесячно обновляется контент, и независимо от того, какой контент обновляется, против них упоминается дата, и я хочу получить уведомление по электронной почте о том, что xxxx.....EBA2.9 (пример) обновляется. Кто-нибудь может мне помочь.

Что я уже пробовал:

до сих пор я пытался :

from selenium import webdriver
from selenium.webdriver.common.keys import Keys #to search the particular key

DR = webdriver.Chrome()  #created instance "DR" of the browser
DR.get("https://eba.europa.eu/risk-analysis-and-data/reporting-frameworks/reporting-framework-2.9")

Details = DR.find_elements_by_css_selector('div>p>strong')
print(Details)

for dtl in Details:
    DetailText = dtl.find_element_by_css_selector('div.a')
    print(DetailText.text)



но результата не получил.

Gerry Schmitz

"Если вы хотите быть в курсе работы ЕБА, подпишитесь на электронные оповещения еба."

Sunil KK

Спасибо Шмитцу за ответ, но я хочу сделать эту часть, используя веб-слом.

ZurdoDev

Затем вам нужно будет разобрать html и найти именно то, что вы ищете.

Sunil KK

Привет Dev, я действительно получаю уведомление всякий раз, когда какой-либо последний контент загружается EBA. например, если вы перейдете по ссылке (я упоминал выше), вы найдете дату против контента, такого как (Обновлено 19 августа 2019 года) [ZIP, 2994KB]. Если эта дата будет изменена мне нужно уведомление

ZurdoDev

Я не понимаю, что вы хотите, чтобы мы сделали. Вы сказали, что действительно "получаете уведомление", а затем сказали: "мне нужно уведомление"

Sunil KK

Привет, Дев, Извини за путаницу. На самом деле я хочу получить уведомление, если даты будут обновлены. Позвольте мне привести вам пример :

3. DPM v2.9

a. база данных DPM (обновлена 19 августа 2019 года) [ZIP, 81129KB]

b. словарь DPM (обновлен 19 августа 2019 года) [XLS, 940KB]

c. макет таблицы DPM и категоризация точек данных (Обновлено 19 августа 2019 года) [ZIP, 7214KB]

d. изменения по сравнению с предыдущей версией Фаза 1 (обновлено 28 мая 2019 года) [ZIP, 6263KB]

e. изменения по сравнению с предыдущей версией phase 2 (Обновлено 19 августа 2019 года) [ZIP, 2994KB]

теперь предположим, что EBA обновила некоторый контент для "e" в ту дату, которая будет обновлена с "Обновлено 19 августа 2019 года" до "обновлено 25 сентября 2019 года"

Теперь я хочу получить уведомление в следующем формате :

3. DPM v2.9

e. изменения по сравнению с предыдущей версией phase 2 (Обновлено 25 сентября 2019 года) [ZIP, 2994KB]



Я надеюсь, что смогу уточнить, что именно я хочу, используя веб-слом.

ZurdoDev

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

Если они не уведомят вас, то вам нужно написать код, который каждый день анализирует их html-код в поисках даты, а затем делает все, что вы хотите.

Sunil KK

Привет Дэв,

именно этого я и хочу: "если они не будут уведомлять вас, то вам нужно написать код, который будет анализировать их html каждый день в поисках даты, а затем делать все, что вы хотите".

ZurdoDev

Нет. Это именно то, что мой первый комментарий был 3 дня назад. Где ты застрял? У вас есть какой-то код выше. - Что случилось?

Sunil KK

В моем коде я получаю заголовок, но когда я пытаюсь напечатать эти заголовки, он выдает мне ошибку, и я не знаю, как использовать этот заголовок для получения уведомления.

ZurdoDev

Шаг 1 - выяснить, как определить, когда что - то новое. Например, есть ли на странице место с обновленной датой?

Sunil KK

Да, это ссылка только для вашей справки

https://eba.europa.eu/risk-analysis-and-data/reporting-frameworks/reporting-framework-2.9


вы можете увидеть "2. правила проверки (обновлено 10 сентября 2019 года) [XLSX, 4.2 MB]" такого рода заявление, где мы можем видеть дату.

ZurdoDev

Если вы посмотрите на источник, то у них нет этой информации внутри элемента с именем или идентификатором, поэтому нет никакого способа получить ее напрямую. Как я уже сказал в первый раз, вам нужно будет найти способ проанализировать данные и найти то, что вы хотите. Например, вы можете найти "(Обновлено"), но они могут изменить его, и он больше не будет работать.

Sunil KK

Я согласен с вашей точкой зрения, что внутри элемента нет имени или идентификатора. Но я должен это сделать, ты хоть представляешь ? любое предложение>

ZurdoDev

Найдите "updated on (", а затем попробуйте разобрать его. Или обратитесь на сайт. Возможно, у них уже есть RSS-канал или какой-то другой способ.

0 Ответов