4
4
from logging import Formatter , FileHandler
5
5
from forms import *
6
6
import os
7
-
7
+ import json
8
+ from watson_developer_cloud import ToneAnalyzerV3
9
+ from watson_developer_cloud import AlchemyLanguageV1
10
+ import requests
11
+ from ma_schema .AnalyticsSchema import AnalyticsSchema
12
+ from ma_schema .UserSchema import UserSchema
13
+
14
+ import uuid
15
+ from models .Analytics import Analytics
16
+
17
+ WATSON_USERNAME = '1be2c698-56e7-47d4-9944-6e4d81c9b07d' ,
18
+ WATSON_PASSWORD = 'sPr4XOsPtNSX'
19
+ ALCHEMY_API_KEY = '07551e54797d7b593f3595653a7cad5b1803d3a6'
8
20
app = Flask (__name__ )
9
21
app .secret_key = 's3cr3t'
10
22
@@ -16,13 +28,60 @@ def shutdown_session(exception=None):
16
28
17
29
@app .route ('/' )
18
30
def home ():
31
+ aSchema = AnalyticsSchema ()
32
+ over = Analytics .query .all ()
33
+ uSchema = UserSchema ()
34
+ print over
19
35
return render_template ('pages/placeholder.home.html' )
20
36
21
37
22
38
@app .route ('/about' )
23
39
def about ():
24
40
return render_template ('pages/placeholder.about.html' )
25
41
42
+ @app .route ('/analytics' )
43
+ def analytics ():
44
+
45
+ aSchema = AnalyticsSchema ()
46
+ #sentJson = reqData['review']
47
+
48
+ content = "Facebook, you suck!"
49
+
50
+ sentJson = {}
51
+
52
+ tone_analyzer = ToneAnalyzerV3 (
53
+ username = '1be2c698-56e7-47d4-9944-6e4d81c9b07d' ,
54
+ password = WATSON_PASSWORD ,
55
+ version = '2016-05-19' )
56
+
57
+ alchemy_language = AlchemyLanguageV1 (api_key = '07551e54797d7b593f3595653a7cad5b1803d3a6' )
58
+ sentiment = alchemy_language .sentiment (text = content )
59
+
60
+ sentJson ['id' ] = str (uuid .uuid1 ())
61
+ sentJson ['sentiment_score' ] = sentiment ['docSentiment' ]['score' ]
62
+ sentJson ['sentiment_type' ] = sentiment ['docSentiment' ]['type' ]
63
+
64
+ sentimentData = tone_analyzer .tone (text = content )
65
+
66
+ sentJson ['anger' ] = sentimentData ["document_tone" ]["tone_categories" ][0 ]["tones" ][0 ]["score" ]
67
+ sentJson ['disgust' ] = sentimentData ["document_tone" ]["tone_categories" ][0 ]["tones" ][1 ]["score" ]
68
+ sentJson ['fear' ] = sentimentData ["document_tone" ]["tone_categories" ][0 ]["tones" ][2 ]["score" ]
69
+ sentJson ['joy' ] = sentimentData ["document_tone" ]["tone_categories" ][0 ]["tones" ][3 ]["score" ]
70
+ sentJson ['sadness' ] = sentimentData ["document_tone" ]["tone_categories" ][0 ]["tones" ][4 ]["score" ]
71
+
72
+ sentJson ['openness' ] = sentimentData ["document_tone" ]["tone_categories" ][2 ]["tones" ][0 ]["score" ]
73
+ sentJson ['conscientiousness' ] = sentimentData ["document_tone" ]["tone_categories" ][2 ]["tones" ][1 ]["score" ]
74
+ sentJson ['extraversion' ] = sentimentData ["document_tone" ]["tone_categories" ][2 ]["tones" ][2 ]["score" ]
75
+ sentJson ['aggreablesness' ] = sentimentData ["document_tone" ]["tone_categories" ][2 ]["tones" ][3 ]["score" ]
76
+ sentJson ['neuroticism' ] = sentimentData ["document_tone" ]["tone_categories" ][2 ]["tones" ][4 ]["score" ]
77
+
78
+ #print sentJson
79
+ ana = aSchema .load (sentJson , session = db_session ).data
80
+ db_session .add (ana )
81
+ db_session .commit ()
82
+
83
+ return render_template ('pages/placeholder.home.html' )
84
+
26
85
27
86
@app .route ('/login' )
28
87
def login ():
0 commit comments