Как я могу отслеживать веб-сайт с мобильного телефона и получать мгновенные уведомления по электронной почте или смс при изменении содержимого на веб-сайте? - PullRequest
0 голосов
/ 11 мая 2019

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

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

Я пытаюсь написать пакетный скрипт или скрипт на Python, но не знаю, с чего начать

1 Ответ

0 голосов
/ 11 мая 2019

Я полагаю, что наиболее общим решением было бы загрузить веб-страницу и посмотреть, изменилась ли она (хотя и не очень эффективно)

Просто сделано с Python3:

import requests
import time
import smtplib
_Webpage = 'http://example.org'
_Wait_Time = 60 * 15 #time in seconds
old = requests.get(_Webpage)
try:
    while True:
        time.sleep(_Wait_Time)
        new = requests.get(_Webpage)
        if(new.content != old.content):
            print('Change detected at: ' + time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime()))
            old = new
            #save in file?
            '''with open('file.txt', 'a') as f:
                f.write('Change detected at: ' + time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime()))
            '''
            #email? (gmail- requires that you allow third party access to the account first)
            '''
            server = smtplib.SMTP_SSL('smtp.gmail.com', 465)
            server.login("username", "password")
            server.sendmail(
            "from@address.com", 
            "to@address.com", 
            "Change detected at: " + time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime()))
            server.quit()
            '''
except KeyboardInterrupt:
    print('\n' + 'Exiting..')

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...