def weather(query):
    key = "772992eec7a54fc87f19fcf6fc03d643"
    weather_url = "http://api.openweathermap.org/data/2.5/weather?"
    if "in" in query:
        ind = query.split().index("in")
    else:
        ind = query.split().index("of")
    # print(ind)
    location = query.split()[ind + 1 :]
    location = "".join(location)
    url = weather_url + "appid=" + key + "&q=" + location
    js = requests.get(url).json()
    if js["cod"] != "404":
        temp = js["main"]
        tem = temp["temp"]
        tem = tem - 273.15
        humidity = temp["humidity"]
        desc = js["weather"][0]["description"]
        response = (
            "The temperature in Calcius is "
            + str(round(tem, 2))
            + " The humidity is "
            + str(round(humidity, 2))
            + " and the weather description is "
            + str(desc)
        )
        print(response)
        speak(response)
    else:
        speak("City not found")
def notethat():
    speak("what should i remember sir")
    rememberMessage = ask()
    speak("you said me to remember" + rememberMessage)
    remember = open("data.txt", "w")
    remember.write(rememberMessage)
    remember.close()
def brightness(query):
    res = [int(i) for i in query.split() if i.isdigit()]
    if len(res) == 0:
        speak("No digit specified")
    else:
        lev = res[0]
        current_brightness = sbc.get_brightness()
        new_lev = lev
        if (
            "increment" in query
            or "add" in query
            or "increase" in query
            or "up" in query
            or "high" in query
        ):
            new_lev = min(current_brightness + lev, 100)
            sbc.set_brightness(new_lev)

        elif (
            "decrement" in query
            or "subtract" in query
            or "decrease" in query
            or "low" in query
            or "down" in query
        ):
            print(lev)
            new_lev = max(current_brightness - lev, 0)
            sbc.set_brightness(new_lev)
        else:
            if new_lev > 100:
                new_lev = 100
            elif new_lev < 0:
                new_lev = 0
            sbc.set_brightness(new_lev)
        speak("Brightness is changed to" + str(new_lev))
def picture_taker_caller(input_string):
    speak("preparing to take image press space to save and escape to quit")
    cam = cv2.VideoCapture(0)

    cv2.namedWindow("test")

    img_counter = 0

    while True:
        ret, frame = cam.read()
        if not ret:
            print("failed to grab frame")
            break
        cv2.imshow("test", frame)

        k = cv2.waitKey(1)
        if k % 256 == 27:
            # ESC pressed
            print("Escape hit, closing...")
            break
        elif k % 256 == 32:
            # SPACE pressed
            img_name = "picture{}.png".format(img_counter)
            cv2.imwrite(img_name, frame)
            print("{} written!".format(img_name))
            img_counter += 1

    cam.release()

    cv2.destroyAllWindows()
def main_date():

    now = datetime.datetime.now()
    speak("Sir, the Current Date is : " + now.strftime("%m-%d-%Y") + "\n")
    print("Sir, the Current Date is : ")
    print(now.strftime("%d-%m-%Y") + "\n")
    print("")
def mozila():
    if platform == "linux" or platform == "linux2":
        subprocess.run("firefox", shell=True)
    elif platform == "darwin":
        subprocess.run("open -a Firefox --args -private-window", shell=True)
    elif platform == "win32":
        subprocess.run("start firefox", shell=True)
    else:
        speak("Unsupported OS")
def open_chrome():

    if platform == "linux" or platform == "linux2":
        subprocess.run("chrome", shell=True)
    elif platform == "darwin":
        subprocess.run("open -a Chrome --args -private-window", shell=True)
    elif platform == "win32":
        subprocess.run("start chrome", shell=True)
    else:
        speak("Unsupported OS")
def show_battery():

    speak("Showing remaining battery")
    battery = psutil.sensors_battery()
    percent = battery.percent
    percentinletters = str(percent)
    speak(
        "Sir, there is " + percentinletters +
        " percent remaining. Battery remaining is printed in the main screen.")
    print("There is " + percentinletters + " % remaining.")
    print("")
def gk(query):
    app_id = "A5JYYE-TPRTRVW2AX"
    cilent = wolframalpha.Client(app_id)
    ind = query.split().index("is")
    text = query.split()[ind + 1 :]
    res = cilent.query(" ".join(text))
    answer = next(res.results).text
    ans = ""
    for i in text:
        ans += i
        ans += " "
    ans = ans + "is " + answer
    print(ans)
    speak(ans)
def pasword():

    s1 = string.ascii_lowercase
    s2 = string.ascii_uppercase
    s3 = string.digits
    s4 = string.punctuation
    speak("please enter password length")
    plen = int(input("Enter password length\n"))

    s = []
    s.extend(s1)
    s.extend(s2)
    s.extend(s3)
    s.extend(s4)
    p = "".join(random.sample(s, plen))
    speak("here is yout password sir you can copy it to yout clipboard")
    print(p)
Exemplo n.º 11
0
def createfile():
    speak("please tell me file name")
    query = ask().lower()
    speak("Tell the file type that you want to create")
    ext = ask().lower()
    ext = identify_extension(ext)
    query = query + ext
    f = open(query, "w")
    speak(
        "file created successfully. please tell me what do you want to write ")
    query = ask().lower()
    f.write(str(query))
    speak("file created")
Exemplo n.º 12
0
def deletefile():
    speak("please tell me file name to delete")
    query = ask().lower()
    speak("please tell the file extension")
    ext = ask().lower()
    ext = identify_extension(ext)
    query = query + ext
    if os.path.exists(str(query)):
        os.remove(str(query))
        speak("file deleted successfully")
        query = query.lower()
    else:
        speak("file doesnt exist")
def corona():
    url = "https://www.worldometers.info/coronavirus/country/india/"  # Website URL address used for web-scraping
    req = requests.get(url)
    bsObj = BeautifulSoup(req.text, "html.parser")
    data = bsObj.find_all("div", class_="maincounter-number")
    print("Collecting the data....")
    speak("Collecting the data")
    print("Total Cases: ", data[0].text.strip())
    speak("Total Cases: " + data[0].text.strip())
    print("Total Deaths: ", data[1].text.strip())
    speak("Total Deaths: " + data[1].text.strip())
    print("Total Recovered: ", data[2].text.strip())
    speak("Total Recovered: " + data[2].text.strip())
def player():
    file_path_video = folder_finder()

    flist_video = [
        p for p in pathlib.Path(file_path_video).iterdir() if p.is_file()
    ]
    f_video = []
    filename = {}

    c = 0
    for f in flist_video:
        f_video.append('"' + str(f) + '"')
        stemp, ftemp = os.path.split(str(f))
        filename[c] = str(ftemp)
        c += 1

    speak('Please provide the Number of the file')
    print_dict(filename)
    t = int(ask()) - 11
    os.system(f_video[t])
def movie_suggest():
    url = "http://www.imdb.com/chart/top"
    response = requests.get(url)
    soup = BeautifulSoup(response.text, "html.parser")

    movies = soup.select("td.titleColumn")
    links = [a.attrs.get("href") for a in soup.select("td.titleColumn a")]
    crew = [a.attrs.get("title") for a in soup.select("td.titleColumn a")]
    ratings = [
        b.attrs.get("data-value") for b in soup.select("td.posterColumn span[name=ir]")
    ]
    votes = [b.attrs.get("data-value") for b in soup.select("td.ratingColumn strong")]

    imdb = []

    # Store each item into dictionary (data), then put those into a list (imdb)
    for index in range(0, len(movies)):
        # Seperate movie into: 'place', 'title', 'year'
        movie_string = movies[index].get_text()
        movie = " ".join(movie_string.split()).replace(".", "")
        movie_title = movie[len(str(index)) + 1 : -7]
        year = re.search("\((.*?)\)", movie_string).group(1)
        place = movie[: len(str(index)) - (len(movie))]
        data = {
            "movie_title": movie_title,
            "year": year,
            "place": place,
            "star_cast": crew[index],
            "rating": ratings[index],
            "vote": votes[index],
            "link": links[index],
        }
        imdb.append(data)
    speak("Here is the top 10 imdb rating movie to watch.")
    k = 0
    for item in imdb:
        print(k + 1, "-", item["movie_title"])
        speak(item["movie_title"])
        k += 1
        if k == 10:
            break
def search_wiki():
    speak("What do you want to search on wikipedia ?")
    sinwiki = ask()
    sinwiki = sinwiki.replace("wikipedia", "")
    results = wikipedia.summary(sinwiki, sentences=2)
    print(results)
    speak("According to Wikipedia,")
    speak(results)
def folder_finder():
    speak(
        "please specify the folder name which contains Movies Videos Photos or Musics"
    )
    file_k = ask()
    file_names = [file_k.lower()]
    if (file_k[-1] != 's'):
        file_names.append(file_k.lower() + 's')

    sysos = platform.system()
    found_paths = []
    if sysos == "Windows":
        drive_latter = os.popen("fsutil fsinfo drives").readlines()
        drive_latter = drive_latter[1].split(' ')
        drive_latter.pop(0)
        drive_latter.pop(-1)

        for file_name in file_names:
            for drive_path in drive_latter:
                found_paths.extend(find_folder(file_name, drive_path))
    elif sysos == "Linux":
        found_paths = find_folder(file_name, "//")
    elif sysos == "Darwin":
        found_paths = find_folder(file_name, "//")

    if len(found_paths) == 0:
        speak('Sorry, system cannot find your folder. Please try again.')
    elif len(found_paths) == 1:
        speak('Here System found only one folder with given file name')
        print('Here System found only one folder with given file name : ',
              file_k)
        ff = found_paths[0]
    else:
        speak('System found This many path, from which path you want to play')
        print('System found This many path from which you want to play',
              file_k.capitalize())
        print('\n***************************')
        for i in range(0, len(found_paths)):
            print(i + 11, ' : ', found_paths[i])
        print('***************************')

        ff = found_paths[int(ask()) - 11]
        print("\033[1m", '\nPlease provide the Number of the file :',
              "\033[0m")
    return ff
def meaning(query):
    reg_ex = re.search(".meaning of (.+)", query)
    print(reg_ex)
    if reg_ex:
        # word_id = reg_ex.group(1)
        ind = query.split().index("of")
        temp = query.split()[ind + 1 :]
        word_id = temp[0]
        print(word_id)
        app_id = "4ea13c64"  # app_id from oxforddictionaries
        app_key = "ee330a18c6d1b84caa707af849421635"  # app_key from oxforddictionaries
        language = "en"
        url = (
            "https://od-api.oxforddictionaries.com:443/api/v2/entries/"
            + language
            + "/"
            + word_id.lower()
        )
        urlFR = (
            "https://od-api.oxforddictionaries.com:443/api/v2/stats/frequency/word/"
            + language
            + "/?corpus=nmc&lemma="
            + word_id.lower()
        )
        r = requests.get(url, headers={"app_id": app_id, "app_key": app_key})
        name_json = r.json()
        name_list = []
        for name in name_json["results"]:
            name_list.append(name["word"])
        print("You searched for the word : " + word_id)
        speak("You searched for the word : " + word_id)
        url_mean = (
            "https://od-api.oxforddictionaries.com:443/api/v1/entries/"
            + language
            + "/"
            + word_id.lower()
        )
        mean_json = r.json()
        mean_list = []
        speak("I can Read it out for you")
        for result in mean_json["results"]:
            for lexicalEntry in result["lexicalEntries"]:
                for entry in lexicalEntry["entries"]:
                    for sense in entry["senses"]:
                        mean_list.append(sense["definitions"][0])
                    for i in mean_list:
                        print(word_id + " : " + i)
                        speak(word_id + " : " + i)
def news():
    url = "http://newsapi.org/v2/top-headlines?country=in&apiKey=e19bfb969c6840549b0244cca9f1fb83"
    try:
        response = requests.get(url)
    except:
        speak("Please Check your connection")

    news = json.loads(response.text)
    k = 1
    for new in news["articles"]:
        k += 1
        print(str(new["title"]), "\n")
        speak(str(new["title"]))
        print(str(new["description"]), "\n")
        speak(str(new["description"]))
        if k >= 3:
            break
    response = requests.get(url)
def eval_s_caller(query):

    app_id = json.load(open(WFA_KEY_JSON, "r"))["APPID"]
    client = wolframalpha.Client(app_id)
    if "calculate" in query.lower():
        indx = query.lower().split().index("calculate")
    elif "evaluate" in query.lower():
        indx = query.lower().split().index("evaluate")

    try:
        query = query.split()[indx + 1:]
    except:
        speak("Could you please specify what to calculate?")
        query = ask()
    res = client.query(" ".join(query))
    try:
        answer = next(res.results).text
    except:
        speak("No responce from the API")
        return
    print("The answer is " + answer)
    speak("The answer is " + answer)
"""
Developer   : Naman Dave
College ID  : 201801439
About       : Temporary file (for testing purpose)
"""
import os
import src.va as va
import recombyte as rb

my_list = [
        ]
query_list = list(my_list)

rm = True

if rm or not os.path.exists(rb.DATA_STORAGE_FILENAME):
    os.remove("data_storage.p")
    rb.save_data(query_list)

query_list, total_words, words_dict, tot_words_dict = rb.load_data()
command = ""
while True:
    command = va.ask()
    if "stop" in command:
        break
    answer = rb.recombyte_q(command, query_list, words_dict, tot_words_dict)
    print(answer)
    if answer != []:
        va.speak(answer[0][0])
Exemplo n.º 22
0
    "make document": create_caller,
    "create ppt": create_caller,
    "make ppt": create_caller,
    "create powerpoint": create_caller,
    "make powerpoint": create_caller,
    "create css": create_caller,
    "make css": create_caller,
    "create javascript": create_caller,
    "make javascript": create_caller,
    "create python": create_caller,
    "make python": create_caller,
    "create java": create_caller,
    "make java": create_caller,
    "create cpp": create_caller,
    "make cpp": create_caller,
    "create html": create_caller,
    "make html": create_caller,
    "create pdf": create_caller,
    "make pdf": create_caller,
}
# main function
if __name__ == "__main__":

    while True:
        query = ask().lower()

        if str(query) in query:
            # calling create file function
            speak("creating file")
            createfile()
def gmail_caller(input_string):
    speak("Opening Gmail")
    webbrowser.open("https://mail.google.com/mail/u/0/#inbox")
Exemplo n.º 24
0
    "delete ppt": delete_caller,
    "remove ppt": delete_caller,
    "delete powerpoint": delete_caller,
    "remove powerpoint": delete_caller,
    "delete css": delete_caller,
    "remove css": delete_caller,
    "delete javascript": delete_caller,
    "remove javascript": delete_caller,
    "delete python": delete_caller,
    "remove python": delete_caller,
    "delete java": delete_caller,
    "remove java": delete_caller,
    "delete cpp": delete_caller,
    "remove cpp": delete_caller,
    "delete html": delete_caller,
    "remove html": delete_caller,
    "delete pdf": delete_caller,
    "remove pdf": delete_caller,
}

# main function
if __name__ == "__main__":

    while True:
        query = ask().lower()

        if str(query) in query:
            # calling create file function
            speak("deleting file")
            deletefile()
def google_map(query):
    ind = query.split().index("is")
    location = query.split()[ind + 1 :]
    url = "https://www.google.com/maps/place/" + " ".join(location)
    speak("This is where" + str(location) + "is.")
    webbrowser.open_new_tab(url)
def tell_joke():
    speak(pyjokes.get_joke())
def tell_time():
    tim = datetime.datetime.now().strftime("%I:%M:%S")
    speak("Sir, The time is: ")
    print(tim)
    speak(tim)
def book_suggest():
    url = "https://www.goodreads.com/book/most_read"  # Website URL address used for web-scraping
    req = requests.get(url)
    bsObj = BeautifulSoup(req.text, "html.parser")
    book_title = bsObj.find_all(class_="bookTitle")
    author_name = bsObj.find_all(class_="authorName")

    print("Here are the 5 Most Read Books This Week \n")
    speak("Here are the 5 Most Read Books This Week")
    print(book_title[0].text.strip() + " by " + author_name[0].text.strip())
    speak(book_title[0].text.strip() + " by " + author_name[0].text.strip())
    print(book_title[1].text.strip() + " by " + author_name[1].text.strip())
    speak(book_title[1].text.strip() + " by " + author_name[1].text.strip())
    print(book_title[2].text.strip() + " by " + author_name[2].text.strip())
    speak(book_title[2].text.strip() + " by " + author_name[2].text.strip())
    print(book_title[3].text.strip() + " by " + author_name[3].text.strip())
    speak(book_title[3].text.strip() + " by " + author_name[3].text.strip())
    print(book_title[4].text.strip() + " by " + author_name[4].text.strip())
    speak(book_title[4].text.strip() + " by " + author_name[4].text.strip())