Example #1
0
def translate():
    url = 'https://translate.yandex.net/api/v1.5/tr.json/translate?'
    key = 'trnsl.1.1.20190227T075339Z.1b02a9ab6d4a47cc.f37d50831b51374ee600fd6aa0259419fd7ecd97'
    text = funcs.voice.split()[1:]
    lang = 'en-ru'
    r = requests.post(url, data={'key': key, 'text': text, 'lang': lang}).json()
    try:
        funcs.speak(r["text"])
    except:
        funcs.speak("Обратитесь к переводчику, начиная со слова 'Переводчик'")
Example #2
0
def fun():
    anekdots = ["Хрен вам, а не налоги на недвижемость!- приговаривала Баба- Яга, приделывая к избушке куринные ножки.",
                "— Дорогая, что ты подумала, когда я пришел пьяный и с фингалом? — Когда ты пришел – фингала еще не было",
                "Почему кошки научились видеть в темноте? Потому что не достают до выключателя.",
                "Учительница спрашивает Вовочку: — Вовочка, ты зачем так мелко пишешь? — Чтобы ошибки были не так заметны, Марь Иванна",
                "Урок химии. — Вова, что ты можешь сказать о молекулах соли? — Они хорошо сочетаются с молекулами огурца.",
                "— Можно выйти? — Вовочка, до звонка никто не выходит! — Мариванна, я с вами случайно в одной маршрутке еду!",
                "— Алло, скорая?! Приезжайте, тут людям плохо! — Диктуйте адрес. — Россия.",
                "Муж смотрит телевизор и вслух говорит: — Не иди туда. Ну не иди дурак… Жена спрашивает: — Что смотришь? Ужасы? Муж: — Нашу свадьбу...",
                "В 3 часа ночи звонок в дверь:" "— Кто там?" " — Грабители, нам нужно 100 кг золота." " — А 105 кг не надо??" " — Ну давайте 105. " "— Ксюшенька, золотце, вставай за тобой пришли.",
                "Преподаватель — студенту: — Вы были в армии? Студент: — Нет, а что? Препод: — Да так... могу устроить."]
    funcs.speak(choice(anekdots))
Example #3
0
def check_weather():
    file = open('cities.txt')
    rl = file.readlines()
    owm = pyowm.OWM('b567af6828fb0dc81c822f00e7371439')
    if len(funcs.voice.split()) == 1:
        city = 'Магнитогорск'
    else:
        weather = funcs.voice.split()[-1].capitalize()
        if ''.join(list((weather[-2], weather[-1]))) == 'ом':
            weather = weather[:-2]
            weather += 'е'
        letters = ['\n', 'я\n', 'а\n', 'ь\n', 'й\n', 'о\n', 'ый\n', 'ий\n']
        if weather[-1] in 'еи':
            city_list = [
                weather.replace(weather[-1], letter) for letter in letters
            ]
            while city_list:
                for i in city_list:
                    if i in rl:
                        city = i.strip()
                        city_list.clear()
                        break
                    else:
                        city_list.remove(i)
        else:
            city = weather

    try:
        observation = owm.weather_at_place(city)
        w = observation.get_weather()
        temperature = w.get_temperature('celsius')['temp']
        temp_max, temp_min = w.get_temperature(
            'celsius')['temp_max'], w.get_temperature('celsius')['temp_min']
        wind_speed = w.get_wind()['speed']
        rain, snow = w.get_rain(), w.get_snow()

        if rain:
            funcs.speak("Сегодня будет дождь, возьмите зонт!")
        if snow:
            funcs.speak("Сегодня будет снег, оденьтесь потеплее")

        funcs.speak(
            "В городе {0} температура {1} градусов по Цельсию. Скорость ветра {2} метра в секунду."
            .format(city, str(temperature), wind_speed))
        funcs.speak(
            "Температура поднимется до {0} градусов и опустится до {1} градусов"
            .format(str(temp_max), str(temp_min)))
    except:
        funcs.speak("Город не найден!")
Example #4
0
def calculator():
    try:
        list_of_nums = funcs.voice.split()
        num_1, num_2 = int((list_of_nums[-3]).strip()), int(
            (list_of_nums[-1]).strip())
        opers = [list_of_nums[0].strip(), list_of_nums[-2].strip()]
        for i in opers:
            if 'дел' in i or 'множ' in i or 'лож' in i or 'приба' in i or 'выч' in i or i == 'x' or i == '/' or i == '+' or i == '-' or i == '*':
                oper = i
                break
            else:
                oper = opers[1]
        if oper == "+" or 'слож' in oper:
            ans = num_1 + num_2
        elif oper == "-" or 'выче' in oper:
            ans = num_1 - num_2
        elif oper == "х" or 'множ' in oper:
            ans = num_1 * num_2
        elif oper == "/" or 'дел' in oper:
            if num_2 != 0:
                ans = num_1 / num_2
            else:
                funcs.speak("Деление на ноль невозможно")
        elif "степен" in oper:
            ans = num_1**num_2
        funcs.speak("{0} {1} {2} = {3}".format(list_of_nums[-3],
                                               list_of_nums[-2],
                                               list_of_nums[-1], ans))
    except:
        funcs.speak("Скажите, например: Сколько будет 2+2?")
Example #5
0
def convertation():
    class CurrencyError(Exception):
        pass

    c = CurrencyConverter()
    money = None
    from_currency = None
    to_currency = None
    list_of_conv = funcs.voice.split()
    if len(list_of_conv) > 4:
        list_of_conv = list_of_conv[1:]
    else:
        print()
    while money is None:
        try:
            money = list_of_conv[0]
        except ValueError:
            funcs.speak("Скажите, к примеру: 50 долларов в рубли")
            break
    while from_currency is None:
        try:
            list_of_conv[0] = int(list_of_conv[0])
        except ValueError:
            funcs.speak("Скажите, к примеру: 50 долларов в рубли")
            break
        try:
            if "руб" in list_of_conv[1]:
                from_currency = "RUB"
            elif "дол" in list_of_conv[1]:
                from_currency = "USD"
            elif "евр" in list_of_conv[1]:
                from_currency = "EUR"
            if from_currency not in c.currencies:
                raise CurrencyError

        except (CurrencyError, IndexError):
            from_currency = None
            funcs.speak("Скажите, например: 50 долларов в рубли")
            break

    while to_currency is None:
        try:
            list_of_conv[0] = int(list_of_conv[0])
        except ValueError:
            return None
        try:
            if "руб" in list_of_conv[3]:
                to_currency = "RUB"
            elif "дол" in list_of_conv[3]:
                to_currency = "USD"
            elif "евр" in list_of_conv[3]:
                to_currency = "EUR"
            if to_currency not in c.currencies:
                raise CurrencyError

        except (CurrencyError, IndexError):
            to_currency = None
            funcs.speak("Скажите, например: 50 долларов в рубли")
            break
    while True:
        try:
            funcs.speak(
                f"{money} {from_currency} в {to_currency} - "
                f"{round(c.convert(money, from_currency, to_currency), 2)}")
            break
        except ValueError:
            funcs.speak("Скажите, например: 50 долларов в рубли")
            break
Example #6
0
import funcs
import time
import datetime

now = datetime.datetime.now()

if now.hour >= 6 and now.hour < 12:
    funcs.speak("Доброе утро!")
elif now.hour >= 12 and now.hour < 18:
    funcs.speak("Добрый день!")
elif now.hour >= 18 and now.hour < 23:
    funcs.speak("Добрый вечер!")
else:
    funcs.speak("Доброй ночи!")
funcs.listen()
def cinemaParser(cmdType):
    cmd = funcs.voice

    if "континент" in cmd.lower():
        url = "https://conti.sky-cinema.ru/"

    elif "современник" in cmd.lower():
        url = "https://sovr.sky-cinema.ru/"

    else:
        url = "http://gd.sky-cinema.ru/"

    Helper = Parser(url)

    if cmdType == "findFilms":
        films = Helper.getFilmsParameters()
        try:
            if films:
                if datetime.datetime.now().hour != 0:
                    funcs.speak("На сегодня нет свободных сеансов, посмотрим на завтра")
                    url += "?schedule_date=2019-{}-{}&schedule_list_ajax=Y".format(datetime.datetime.now().day+1, datetime.datetime.now().month)
                else:
                    url += "?schedule_date=2019-{}-{}&schedule_list_ajax=Y".format(datetime.datetime.now().day, datetime.datetime.now().month)
                Helper = Parser(url)
                films = Helper.getFilmsParameters()

            for elem in films:
                funcs.speak(elem)
            funcs.speak("Если вы хотите посмотреть информацию о фильме, укажите его название в конце предложения, в именительном падеже. Также вы можете указать любой филиал skycinema перед названием фильма, по умолчанию я буду искать фильмы в Гостинном дворе.")
        except:
            funcs.speak("К сожалению, я не могу найти фильмы в данном филиале")
        
    if cmdType == "findFilmInfoInCinema":
        try:
            films = Helper.getFilmsParameters()
            if films:
                if datetime.datetime.now().hour != 0:
                    funcs.speak("На сегодня нет свободных сеансов, посмотрим на завтра")
                    url += "?schedule_date=2019-{}-{}&schedule_list_ajax=Y".format(datetime.datetime.now().day+1, datetime.datetime.now().month)
                else:
                    url += "?schedule_date=2019-{}-{}&schedule_list_ajax=Y".format(datetime.datetime.now().day, datetime.datetime.now().month)
                Helper = Parser(url)
                films = Helper.getFilmsParameters()

            filmName = cmd.split()[-1].title()
            if filmName in films:
                funcs.speak("Вот что мне удалось найти")
                funcs.speak(films[filmName][0])
                for i in range(len(films[filmName][1])):
                    print(f'\n\nНачало в: {films[filmName][1][i]["time"]}\nСтоимость: {films[filmName][1][i]["cost"]}\nФормат: {films[filmName][1][i]["format"]}')
            else:
                funcs.speak("Данного фильма нет в прокате")
        except:
            funcs.speak("К сожалению, я не могу найти фильм в данном филиале")
Example #8
0
def game():
    os.chdir(r'C:\Users\User\Desktop\ \programming\helper_1')
    cities_file = open('cities.txt')
    cities = cities_file.readlines()
    cities_main = []

    print("""Добро пожаловать в игру 'Города'!
    На ответ даётся 15 секунд.
    Называть нужно исключительно существующие города и только на последнюю букву(если это не ь, ъ, ы)
    """)

    funcs.speak("Кто начинает?(Я/Компьютер)")
    for i in cities:
        cities_main.append(i.split('\n')[0])
    cities_clear = cities_main.copy()

    if ans == "Я":
        city = input("Введите город: ").capitalize()
        print()
        if city == "Йошкар-ола":
            city = "Йошкар-Ола"

    elif ans == "Компьютер":
        city_num = random.randint(0, len(cities_clear))
        city = cities_clear[city_num]
        print()
        if city == "Йошкар-ола":
            city = "Йошкар-Ола"

    else:
        print("Введите либо 'Я', либо 'Компьютер'")

    def city_game(city, cities_clear):
        if city[-1] not in ['ь', 'ъ', 'ы', 'ц']:
            last_letter = city[-1].upper()
            for i in cities_clear:
                if i[0] == last_letter:
                    list.append(i)
            index = random.randint(0, len(list))
            cit = list[index].rstrip()

            print(cit)
            print()
            cities_clear.remove(cit)
            cities_clear.remove(city)
        else:
            last_letter = city[-2].upper()
            for i in cities_clear:
                if i[0] == last_letter:
                    list.append(i)
            index = random.randint(0, len(list))
            cit = list[index].rstrip()

            print(cit)
            print()
            cities_clear.remove(cit)
            cities_clear.remove(city)
        last_cit = cit[-1].upper()
        if last_cit in ['Ь', 'Ъ', 'Ы', 'Ц']:
            last_cit = cit[-2].upper()

        return last_cit

    if city in cities_clear:
        list = []
        last_cit = city_game(city, cities_clear)
    else:
        print("Город либо не существует, либо уже был введён")

    while True:
        start = time.time()

        city = input("Введите город: ").capitalize()
        print()
        if city == "Йошкар-ола":
            city = "Йошкар-Ола"

        if city[0] == last_cit:
            if city in cities_clear:
                list = []
                last_cit = city_game(city, cities_clear)

            else:
                print("Город либо не существует, либо уже был введён")
        else:
            print("Введите город на последнюю букву")

        if time.time() - start >= 15:
            print('Вы не успели')
            break
for _file in os.listdir('chats'):
    linhas = open('chats/' + _file, 'r').readlines()
    bot.train(linhas)
"""
arq = open('constart.txt', 'r')
linhas = arq.readlines()
bot.train(linhas)
while True:
    arq = open('constart.txt', 'r')
    quest = input('você: ')

    if quest == 'adicione':
       aest1 = False
       while aest1 == False:
            listai = arq.readlines()
            funcs.speak('diga a pergunta')
            v = input('bot: diga a pergunta: ')
            listatt = []
            for index, item in enumerate(listai):
                listatt.append(item.strip('\n'))
            if v in listatt:
                funcs.sayandprint('bot: ja existe no arquivo')

                aest1 = False
            else:
                listai.append('{}\n'.format(v))
                aest1 = True
                #arq = open('constart.txt', 'w')
                #arq.writelines(listai)
                #arq.close()
       aest2 = False