def application ( environ, start_response ): logging.getLogger().setLevel(logging.INFO) start_response('200 OK', [('Content-Type', 'text/plain')]) form = cgi.FieldStorage(fp=environ['wsgi.input'], environ=environ) if not form.has_key('account'): return "please input account" account = form['account'].value tweets = get_tweets(account) if not tweets: return "tweet not found" # debug pprint.pprint(tweets) # get user object user = User.get_user(account) if not user: user = User() update_user(user, tweets[0]['user']) for tweet in tweets: add_tweet(tweet) return "success"
def application ( environ, start_response ): start_response('200 OK', [('Content-Type', 'text/plain')]) form = cgi.FieldStorage(fp=environ['wsgi.input'], environ=environ) if not form.has_key('account'): return "please input account" account = form['account'].value user = User.get_user(account) if not user: user = User() user_info = show(account) if not user_info: return "User not found on twitter" user.uid = user_info['id'] user.name = user_info['name'] user.screen_name = user_info['screen_name'] user.put() return "OK"
def add_user(user_info): if User.isStored(user_info['id']): raise UserAlreadyStoredException new_user = User() new_user.uid = user_info['id'] new_user.name = user_info['name'] new_user.screen_name = user_info['screen_name'] new_user.put()
def get_highest_tid(account): ret = None last_tweet = None user = User.get_user(account) qs = 'SELECT * FROM Tweet WHERE uid = ' + str(user.uid) + ' ORDER BY tid DESC' logging.info(qs) tweets = db.GqlQuery(qs) if tweets.count() > 0: last_tweet = tweets[0] if last_tweet: ret = str(last_tweet.tid) return ret
def application ( environ, start_response ): data = [] num_limit = 10 before_tid = None start_response('200 OK', [('Content-Type', 'text/plain')]) form = cgi.FieldStorage(fp=environ['wsgi.input'], environ=environ) if not form.has_key('account'): return json.dumps(data) if form.has_key('limit'): try: num_limit = int(form['limit'].value) except: pass if form.has_key('before_tid'): try: before_tid = int(form['before_tid'].value) except: pass account = form['account'].value user = User.get_user(account) if not user: return json.dumps(data) tweets = Tweet.getTweetsByUser(user, num_limit, before_tid) for tw in tweets: tw_data = [] tw_data.append(str(tw.time)) tw_data.append(Thumbs.genThumbs(tw.text)) if tw.lat and tw.lng: tw_data.append([tw.lng, tw.lat]) else: tw_data.append(None) tw_data.append(tw.tid) data.append(tw_data) return json.dumps(data)
def application(environ, start_response): data = [] num_limit = 10 before_tid = None start_response('200 OK', [('Content-Type', 'text/plain')]) form = cgi.FieldStorage(fp=environ['wsgi.input'], environ=environ) if not form.has_key('account'): return json.dumps(data) if form.has_key('limit'): try: num_limit = int(form['limit'].value) except: pass if form.has_key('before_tid'): try: before_tid = int(form['before_tid'].value) except: pass account = form['account'].value user = User.get_user(account) if not user: return json.dumps(data) tweets = Tweet.getTweetsByUser(user, num_limit, before_tid) for tw in tweets: tw_data = [] tw_data.append(str(tw.time)) tw_data.append(Thumbs.genThumbs(tw.text)) if tw.lat and tw.lng: tw_data.append([tw.lng, tw.lat]) else: tw_data.append(None) tw_data.append(tw.tid) data.append(tw_data) return json.dumps(data)