-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDadJoke.py
85 lines (57 loc) · 1.72 KB
/
DadJoke.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# -*- coding: utf-8 -*-
"""
Created on Wed Dec 4 18:36:14 2019
@author: entir
"""
#%%
#import requests
#headers={'User-Agent':'entirity','Accept':'application/json'}
#joke=requests.get("https://icanhazdadjoke.com/",headers=headers)
#print(joke.content)
#print(joke.content.decode('utf-8'))
#%% runs the program and sends joke every day at noon
#%% Retrieve joke from API
def joke_retrieve():
import requests
headers={'User-Agent':'entirity','Accept':'text/plain'}
joke=requests.get("https://icanhazdadjoke.com/",headers=headers)
return joke.content.decode('utf-8')
print(joke.content.decode('utf-8'))
#%% Package joke and send it as a text to email
def joke_send(joke):
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
email=""
pas=""
smtp='smtp.gmail.com'
port=587
server=smtplib.SMTP(smtp,port)
server.starttls()
server.login(email,pas)
sms_gateway=[]
for recipient in sms_gateway:
msg=MIMEMultipart()
msg['From']=email
msg['To']=recipient
from datetime import date
msg['Subject']="Dannymarsh's Dad Joke emporium. Date:"+str(date.today())
body=joke
msg.attach(MIMEText(body, 'plain'))
sms=msg.as_string()
server.sendmail(email,recipient,sms)
server.quit()
#%%
# joke_send(joke_retrieve())
while True:
from datetime import datetime
t=datetime.now()
print("running...time is "+str(datetime.now()))
import time
if t.hour==12:
joke_send(joke_retrieve())
print("joke sent")
time.sleep(3600)
else:
time.sleep(3600)
#%%