Skip to content

Commit e58ce23

Browse files
authored
Create monitor_website.py
1 parent 6bf14ba commit e58ce23

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

monitor_website.py

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import time
2+
import smtplib
3+
import datetime
4+
5+
from email.mime.text import MIMEText
6+
7+
import requests
8+
9+
def search_website(url, keyword):
10+
'''Search website at url for keyword'''
11+
req = requests.get(url)
12+
return req.status_code == 200 and keyword.casefold() in req.text.casefold()
13+
14+
def send_email(message):
15+
'''Log in with hard coded credentials and send message. The message should be an email.mime.text.MIMEText object'''
16+
server = smtplib.SMTP('smtp.googlemail.com', 587)
17+
server.ehlo()
18+
server.starttls()
19+
server.login('username', 'password')
20+
server.send_message(message)
21+
server.quit()
22+
23+
if __name__ == '__main__':
24+
URL = ""
25+
KEYWORD = ""
26+
27+
print("Searching for {} at {}".format(KEYWORD, URL))
28+
while True:
29+
if search_website(URL, KEYWORD):
30+
print("Keyword found at {}".format(datetime.datetime.now()))
31+
print("Sending e-mail")
32+
message = MIMEText('{} found at {}!'.format(KEYWORD, URL), _charset='utf-8')
33+
message['from'] = '[email protected]'
34+
message['to'] = '[email protected]'
35+
message['cc'] = ''
36+
message['subject'] = '{} detected!'.format(KEYWORD)
37+
send_email(message)
38+
print("Done")
39+
break
40+
else:
41+
print("Checked at {}. Not found".format(format(datetime.datetime.now())))
42+
time.sleep(60)

0 commit comments

Comments
 (0)