Пример #1
0
	def get(self):
		self.set_header('content-type', 'application/json; charset=UTF-8')
		username  = self.get_argument('username')
		date_text = self.get_argument('date_text')

		tw = TweetDBMongoDB()
		tweets = tw.getTweets({'user.screen_name':username})
		tweet = ''
		for t in tweets:
			text       = t['text']
			created_at = t['created_at']
			dt         = created_at.split(' ')
			fecha      = dt[0]+' '+dt[1]+' '+dt[2]+' '+dt[5]
			fechahora  = dt[0]+' '+dt[1]+' '+dt[2]+' '+dt[5]+' '+dt[3]
			f          = datetime.datetime.strptime(fecha,'%a %b %d %Y').strftime('%d-%m-%Y')
			if f == date_text:
				hour = datetime.datetime.strptime(fechahora,'%a %b %d %Y %H:%M:%S')
				tweet += '{"text":"'+text.replace('\n',' ').replace('"','')+'","hour":"'+hour.strftime('%H:%M:%S')+'"},'
		
		tweet = tweet[0:len(tweet)-1]

		tweet = tweet.encode('utf-8')
		c = json.JSONEncoder()
		s = c.encode('{"tweets" : ['+tweet+']}')
		jsonText = json.loads(s)

		tw.close()
		self.write(jsonText)
Пример #2
0
	def _genera(self, username):
		consumer = oauth.Consumer(consumerKey, consumerSecret)
		token    = oauth.Token(accessToken, accessTokenSecret)
		client   = oauth.Client(consumer,token)
		response = client.request('https://api.twitter.com/1.1/statuses/user_timeline.json?count=100&screen_name='+username)
		data = response[1]

		tweets = json.loads(data)
		fechas = []
		tw = TweetDBMongoDB()
		tw.deleteTweets({'user.screen_name':username})
		for t in tweets:
			created_at = t['created_at']
			dt = created_at.split(' ')
			fecha = dt[0]+' '+dt[1]+' '+dt[2]+' '+dt[5]
			f  = datetime.datetime.strptime(fecha,'%a %b %d %Y').strftime('%d-%m-%Y')
			fechas.append(f)
			oid = tw.insertTweet(t)

		tw.close()

		estadistica = self._gen_estadisticas(fechas)
		
		est = sorted(estadistica,key=lambda c : c[1], cmp=self._invert)

		return est[0:5]