Completed
Push — master ( 67441f...bffef9 )
by Glenn
28s
created

skf/api/chatbot/scripts/code_classify.py (1 issue)

Severity
1
import os, nltk
0 ignored issues
show
The import nltk seems to be unused.
Loading history...
2
from flask import Flask
3
from rake_nltk import Rake 
4
5
app = Flask(__name__)
6
7
8
def data():
9
    with open(os.path.join(app.root_path, "../datasets/code_title.txt","r")) as title:
10
        title=title.readlines()
11
    return title
12
13
14
def phrase(ques):
15
    phrase=[]
16
    new_list=[]
17
    r=Rake()
18
    question=ques
19
    r.extract_keywords_from_text(question)
20
    phrase=r.get_ranked_phrases()
21
    for items in phrase:
22
        new_list.extend(items.lower().split())
23
    return new_list    
24
25
26
def lis(l):
27
    language_list=['flask', 'java', 'go', 'ruby', 'django', 'asp', 'php']
28
    new_l=l
29
    ans=[]
30
    title=data()
31
    for l in new_l:
32
        l=l.lower().strip("\n").strip()
33
        if l in language_list:
34
             #print(l)
35
             code_lang=l
36
             new_l.remove(l)
37
             break
38
        else:
39
             code_lang="NULL"
40
    #print(code_lang)
41
    for i in new_l:
42
        i=i.lower().strip("\n")
43
        for t in title:
44
            t=t.lower()
45
            if i in t:
46
                ans.append(t.strip("\n"))
47
    ans=list(set(ans))
48
    return ans,code_lang
49
50
51
def entity(ques):
52
    count=0
53
    list_p=phrase(ques)
54
    #print(list_p)
55
    ans,code_lang=lis(list_p)
56
    for i in ans:
57
        i=i.strip("\n").lower()
58
        if i in ques.lower():
59
            count=count+1
60
            ent=i
61
            break
62
    if count==1:
63
        return ent,code_lang
64
    else:
65
        if len(ans)==1:
66
           abc=ans[0]
67
           abc=abc.lower().strip("\n")
68
           return abc,code_lang
69
        else:
70
            ansD={}
71
            #print("Select from these\n")
72
            for i in range(len(ans)):
73
               ansD[i+1]=ans[i]
74
            return ansD,code_lang
75
            #print("Select from these\n")
76
            #print(ans)
77
78
79
#question=input("Enter question")
80
#y=(entity(question))
81
#print(y)
82