-
Notifications
You must be signed in to change notification settings - Fork 2
/
functions.py
111 lines (102 loc) · 3.62 KB
/
functions.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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
import json
import urllib2
import urllib
import sendgrid
import MySQLdb
import MySQLdb.cursors
import pymongo
from twilio.rest import TwilioRestClient
from config import *
from pprint import *
#db = MySQLdb.connect(host='localhost', user='root', passwd=dbpass, db='movie_users')
dbconnection = pymongo.Connection()
db = dbconnection.movie_users
collection = db.users
def get_upcoming(n):
url = 'http://api.rottentomatoes.com/api/public/v1.0/lists/movies/upcoming.json?apikey='+rt_key+'&page_limit='+str(n)
u = urllib2.urlopen(url)
result = json.load(u);
u.close()
movies = result['movies']
#for movie in movies:
# r['m' + str(i)] = {'title': movie['title'], 'release-dates': movie['release_dates']['theater'], 'poster': movie['posters']['detailed']}
return movies
def search_movie(name):
#name = urllib.urlencode(name)
url = 'http://api.rottentomatoes.com/api/public/v1.0/movies.json?apikey='+rt_key+'&q='+name+'&page_limit=5'
u = urllib2.urlopen(url)
result = json.load(u);
u.close()
movies = result['movies']
#for movie in movies:
# r[i] = {'title': movie['title'], 'release-dates': movie['release_dates']['theater'], 'poster': movie['posters']['detailed']}
# i=i+1
return movies
def get_movie(index):
url = 'http://api.rottentomatoes.com/api/public/v1.0/movies/'+index+'.json?apikey='+rt_key
u = urllib2.urlopen(url)
result = json.load(u);
u.close()
return result
def addto_db(user, movie, release, email, phone):
#db = MySQLdb.connect(host='localhost', user='root', passwd=dbpass, db='movie_users', cursorclass='MySQLdb.cursors.DictCursor')
#import pdb; pdb.set_trace()
# cursor = db.cursor()
# try:
# cursor.execute("""INSERT INTO users(name, movietitle, releasedate, email, phone) VALUES ("%s","%s",%s,"%s","%s")""",(user,movie,release,email,phone))
# db.commit()
# return True
# except:
# db.rollback()
# return Falsea
post = {"user" : user,
"movie" : movie,
"release" : release,
"email" : email,
"phone" : phone
}
collection.insert(post)
def get_old():
##db = MySQLdb.connect(host='localhost', user='root', passwd=dbpass, db='movie_users', cursorclass='MySQLdb.cursors.DictCursor')
#db = MySQLdb.connect(host='localhost', user='root', passwd=dbpass, db='movie_users')
##import pdb; pdb.set_trace()
#cursor = db.cursor()
#cursor.execute("SELECT * FROM users")
#rows = cursor.fetchall()
#for row in rows:
# data = {}
# data['name'] = row[1][1:][:-1]
# data['title'] = row[2][1:][:-1]
# data['email'] = row[4][1:][:-1]
# data['phone'] = row[5][1:]
# send_text(data['name'], data['title'], data['phone'])
# send_email(data['name'], data['title'], data['email'])
#cursor.execute("TRUNCATE TABLE users")
post = collection.find_one()
pprint(post)
print post['user']
print post['email']
print post['phone']
print post['email']
send_text(post['user'], post['movie'], post['phone'])
send_email(post['user'], post['movie'], post['email'])
result = collection.remove(spec_or_id={'_id': post['_id']}, safe=True)
print result
def send_text(user, movie, phone):
phone = "+1"+phone
print phone
account = tw_account
token = tw_token
sender = tw_sender
client = TwilioRestClient(account, token)
text = 'Hello '+user+'! The movie '+movie+' has been released today! Go see it in a theater near you!'
message = client.sms.messages.create(to=unicode(phone), from_=sender, body=text)
return
def send_email(user, movie, email):
print user
print movie
print email
s = sendgrid.Sendgrid(sg_user, sg_pass, secure=True)
message = sendgrid.Message(sg_email, movie+' Has Been Released', 'Hello '+user+'! The movie '+movie+' has been released today. Go see it in a theater near you!')
message.add_to(email, user)
s.smtp.send(message)