Example #1
0
class Music:
	
	def __init__(self):
		self.st = StanfordNERTagger(JarvisN.config_data.directory_path + '\\tagger\\ner-song-model.ser.gz',
						JarvisN.config_data.directory_path+'\\tagger\\stanford-ner.jar')
		self.db = DataDbHelper()
	def tag(self, sent):
		tokenized_text = word_tokenize(sent)
		classified_text = self.st.tag(tokenized_text)
		print(classified_text)
		entity, value = self.chunk(classified_text)
		return entity, value
		#for tag, chunk in groupby(classified_text, lambda x:x[1]):
		#	if tag != "O":
		#		print("%-12s"%tag, " ".join(w for w, t in chunk))
	def chunk(self, tagged_sent):
		for tag, chunk in groupby(tagged_sent, lambda x:x[1]):
			if tag != "O":
				first = tag
				sec = " ".join(w for w, t in chunk)
				#print("%-12s"%tag, " ".join(w for w, t in chunk))
				return first, sec
	def playSong(self, name):
		songResult = self.db.getSong(name)
		location = songResult[0][1]
		print(location)
		webbrowser.open(location)
		
	def playRandSong(self):
		print("in rand song")
		songResult = self.db.getRandomSong()
		location = songResult[1]
		print(location)
		webbrowser.open(location)
Example #2
0
def main():

    os.chdir(config_data.directory_path)
    #webbrowser.open('http://localhost/jarvis/jarvis.php')
    java_path = "C:\Program Files\Java\jdk1.8.0_101\\bin\java.exe"
    os.environ['JAVAHOME'] = config_data.java_path
    brain = Brain()
    classifier = JarvisClassifier()
    commandManager = CommandManager()
    db = DataDbHelper()

    while (True):

        msg = input()
        #cmd = brain.getCommand(msg)
        cmd = classifier.classify(msg, 'general')
        if cmd == "greeting":
            sub = "NONE"
        else:
            sub = classifier.classify(msg, cmd)

        #React
        print(cmd, sub)
        entity, type = commandManager.callCommand(cmd, sub, msg)
        print(cmd, sub, entity, type)
        if msg == " close" or msg == "close":
            break
        try:
            db.insertIntoNewData(msg, cmd, sub, 0, 0, type)
        except:
            print("entry exists")
    print("closed")
Example #3
0
def main():

    os.chdir(config_data.directory_path)
    webbrowser.open('http://localhost/jarvis/jarvis.php')
    java_path = "C:\Program Files\Java\jdk1.8.0_101\\bin\java.exe"
    os.environ['JAVAHOME'] = config_data.java_path
    brain = Brain()
    classifier = JarvisClassifier()
    commandManager = CommandManager()
    db = DataDbHelper()

    async def hello(websocket, path):

        #Listen ----------
        print('started')
        msg = await websocket.recv()
        #msg = input('Enter command')
        print("< {}".format(msg))

        #cmd = brain.getCommand(msg)
        cmd = classifier.classify(msg, 'general')
        if cmd == "greeting":
            sub = "NONE"
        else:
            sub = classifier.classify(msg, cmd)

        #React
        entity, type = commandManager.callCommand(cmd, sub, msg)
        print(cmd, sub, entity, type)
        if msg == " close" or msg == "close":
            asyncio.get_event_loop().stop()
        try:
            db.insertIntoNewData(msg, cmd, sub, 0, 0, type)
        except:
            print("Entry exists")

    start_server = websockets.serve(hello, 'localhost', 9999)
    loop = asyncio.get_event_loop()  #asyncio.get_event_loop().stop()
    loop.run_until_complete(start_server)
    loop.run_forever()
Example #4
0
import sys
import config_data
sys.path.append(config_data.jarvis_folder_location)
from JarvisN.database.datahelper import DataDbHelper

td = []
dbh = DataDbHelper()
result = dbh.getResult(
    "SELECT sentence, label2 FROM trainingdata WHERE label1='dictionary'")
dbh.closeConnection()

for row in result:
    td.append((row[0], row[1]))
print(td)
Example #5
0
import nltk
import pickle
from nltk.tokenize import word_tokenize
from nltk.classify.scikitlearn import SklearnClassifier
from sklearn.naive_bayes import MultinomialNB, BernoulliNB
from sklearn.linear_model import LogisticRegression, SGDClassifier
from sklearn.svm import SVC, LinearSVC, NuSVC
import sys
import os
sys.path.append(r"C:\Users\Dhaval\Documents\GitHub"
                )  # Your JarvisN folder Location... Replace it
from JarvisN.database.datahelper import DataDbHelper  # Rename folder to JarvisN not JarvisN-Master

#td = []
dbh = DataDbHelper()
#result = dbh.getResult("SELECT sentence, label1 FROM trainingdata")	   # execute ur query here
result = dbh.getResult(
    "SELECT sentence, entitys, entitye, entity FROM trainingdata WHERE label1='music'"
)  # execute ur query here
dbh.closeConnection()
file = open('nerData.tsv', 'w')
for row in result:
    sentence = row[0].split(" ")
    start = row[1]
    end = row[2]
    if row[3] == 'none':
        continue
    print(start, end)
    i = 0
    for word in sentence:
        if i >= start and i < end:
Example #6
0
	def __init__(self):
		self.st = StanfordNERTagger(JarvisN.config_data.directory_path + '\\tagger\\ner-song-model.ser.gz',
						JarvisN.config_data.directory_path+'\\tagger\\stanford-ner.jar')
		self.db = DataDbHelper()