updated sentiment analysis function to handle multiple sentences and fix decoding issue
Added MakerShift to community.md
Update community.md
commented reload(sys)
import sys
+import json
from textblob import TextBlob
+# set default encoding to UTF-8 to eliminate decoding errors
+reload(sys)
+sys.setdefaultencoding('utf8')
+
def get_stdin():
buf = ""
for line in sys.stdin:
@@ -10,8 +15,18 @@ def get_stdin():
if(__name__ == "__main__"):
st = get_stdin()
blob = TextBlob(st)
- out =""
+ res = {
+ "polarity": 0,
+ "subjectivity": 0
+ }
+
for sentence in blob.sentences:
- out = out + "Polarity: " + str(sentence.sentiment.polarity) + " Subjectivity: " + str(sentence.sentiment.subjectivity) + "\n"
- print(out)
+ res["subjectivity"] = res["subjectivity"] + sentence.sentiment.subjectivity
+ res["polarity"] = res["polarity"] + sentence.sentiment.polarity
+
+ total = len(blob.sentences)
+ res["sentence_count"] = total
+ res["polarity"] = res["polarity"] / total
+ res["subjectivity"] = res["subjectivity"] / total
+ print(json.dumps(res))
