데이터 분석/프로젝트

음성 인식을 통한 정보 전달 프로그램 구현

민서타 2023. 8. 11. 16:54

1. 개요

  • 웹 크롤링 공부중 날씨정보(온도)와 미세먼지 값을 전달해주는 프로그램 코드를 구현하고자 함 
  • 휴대폰의 음성인식 비서(시리, 빅스비 등)에서 착안
  • 파이썬의 Selenium, Speech_recognition, gTTS 패키지를 중심으로 다른 패키지를 추가하여 구현 

2. 모델링

 1) 기능 구현

  •  음성 인식 비서에게 음성을 전달하는 것, 컴퓨터에게 해당 음성을 인식시키는 것
  • 하드코딩(서울로 데이터 고정): 서울 날씨 정보(온도)와 서울 미세먼지 정보(중랑구) 전달
  • 해당 정보를 검색하는 기능(네이버 등)

 

 2) 사용한 패키지, 함수

 import json
 import requests
 from gtts import gTTS
 import playsound #pip install playsound == 1.2.2 버전으로 다운그레이드, 오류 해결
 import os
 import pandas as pd
 import speech_recognition as sr
 from selenium import webdriver
 from selenium.webdriver.common.by import By #html 요소 탐색
 from selenium.webdriver.support.ui import WebDriverWait #브라우저 응답 대기
 from selenium.webdriver.support import expected_conditions as EC #html의 요소 체크
 import time
 import module1 as md # speak, listen 함수, 날씨와 미세먼지 정보를 가져오는 모듈 구현

3) 코드 구현

  1. 말하기, 듣기 함수

 2. 서울 날씨 정보, 서울 미세먼지 정보

3. 검색 코드


3. 최종 모델

패키지 호출 및 객체 선언
시리야 음성 입력 시 날씨, 미세먼지, 검색, 종료 코드 구현
인식하지 못했을 때의 출력 구문


4.  프로젝트 결과물에 대한 의견

첫 프로젝트를 진행하며, 코드를 간결하게 구현하기 위해 시간을 많이 썼던 것 같다. 그러던 중 중간 저장을 하지 않아 찾을 수 없는 오류도 많이 발생하고. 다음으로 기능 구현에 대한 막연한 어려움이었다. 코드를 작성하다 보니 추가적으로 이렇게 사용하면 어떨까?하는 생각이 들어 추가 기능을 구현하다 보니 코드가 점점 어질어질해진달까. 그래서 기능 구현에 목적을 두고 최소한으로 작성해보았다. 하드코딩으로 지역을 한정하였으나, 추후 현재 위치와 전국의 GPS정보를 가져오는 API를 응용하여 가변 정보를 통한 코드 구현을 진행하고 싶다.  

반응형

'데이터 분석 > 프로젝트' 카테고리의 다른 글

EDA 분석 프로젝트  (0) 2023.08.25