이 메인 엔진을 갖고 어떤걸 만들어 볼까 고민을 많이했다. 그래서 사수분께 여쭤봤고 기능들을 받았다.
1. 분류 및 미분류, 회사 전체 및 선택 회사 리뷰 기능
2. 이메일 전송기능
3. 자동 저장기능
4. 퀄리티value의 최대 최소 지정
대략적인 작업 흐름도를 그려보았다.
우선 날짜 입력 함수를 만들어보자.
<날짜 입력 함수>
def start_to_date():
start_date_list=[]
st=input("시작 년도를 적으시오: ")
start_date_list.append(st)
st=input("시작 월을 적으시오: ")
start_date_list.append(st)
st=input("시작 일을 적으시오: ")
start_date_list.append(st)
s_year,s_month,s_day=int(start_date_list[0]), int(start_date_list[1]), int(start_date_list[2])
start_date=datetime(s_year,s_month,s_day)
return start_date
def end_to_date():
end_date_list=[]
et=input("종료 년도를 적으시오: ")
end_date_list.append(et)
et=input("종료 월을 적으시오: ")
end_date_list.append(et)
et=input("종료 일을 적으시오: ")
end_date_list.append(et)
e_year,e_month,e_day=int(end_date_list[0]), int(end_date_list[1]), int(end_date_list[2])
end_date=datetime(e_year,e_month,e_day)
return end_date
이 함수를 통해 우리가 반환 받는 값은 start_date(시작일) end_date(종료일) 이다. 이 사이의 리뷰들을 가져오기 위한 함수이다.
def call_url():
url_dict={'CameraFi':'https://play.google.com/store/apps/details?id=com.vaultmicro.camerafi.live&hl=ko&gl=US&showAllReviews=true',
'V_app':'https://play.google.com/store/apps/details?id=com.naver.vapp&hl=ko&gl=US&showAllReviews=true',
'Mobizen':'https://play.google.com/store/apps/details?id=com.rsupport.mobizen.live&hl=ko&gl=US&showAllReviews=true',
'Bigolive':'https://play.google.com/store/apps/details?id=sg.bigo.live&hl=ko&gl=US&showAllReviews=true',
'Omlet':'https://play.google.com/store/apps/details?id=mobisocial.arcade&hl=ko&gl=US&showAllReviews=true',
'Sgether':'https://play.google.com/store/apps/details?id=com.sgrsoft.streetgamer&hl=ko&gl=US&showAllReviews=true'}
return url_dict
call_url함수는 전체 회사 데이터를 가져오기 위한 사전 url 세팅 함수이다.
혹여, 나중에 더 많은 url이 필요하다면 txt에 저장해 한줄씩 읽어오는 방법도 물론 있다.
def select_url():
url_list=['https://play.google.com/store/apps/details?id=com.vaultmicro.camerafi.live&hl=ko&gl=US&showAllReviews=true',
'https://play.google.com/store/apps/details?id=com.naver.vapp&hl=ko&gl=US&showAllReviews=true',
'https://play.google.com/store/apps/details?id=com.rsupport.mobizen.live&hl=ko&gl=US&showAllReviews=true',
'https://play.google.com/store/apps/details?id=sg.bigo.live&hl=ko&gl=US&showAllReviews=true',
'https://play.google.com/store/apps/details?id=mobisocial.arcade&hl=ko&gl=US&showAllReviews=true',
'https://play.google.com/store/apps/details?id=com.sgrsoft.streetgamer&hl=ko&gl=US&showAllReviews=true']
check_num=int(input("원하는 회사를 고르시오: \n"+"[0]:CameraFi\n"+"[1]:V_App\n"+"[2]:BigoLive\n"+"[3]:Mobizen\n"+"[4]:Omlet\n"+"[5]:Sgether\n"))
name=check_num
if(name==0):
CameraFi_live=url_list[0]
checking_url=[CameraFi_live,'CameraFi']
checked=checking_url[0],checking_url[1]
elif(name==1):
V_App=url_list[1]
checking_url=[V_App,'V_App']
checked=checking_url[0],checking_url[1]
elif(name==2):
Mobizen=url_list[2]
checking_url=[Mobizen,'Mobizen']
checked=checking_url[0],checking_url[1]
elif(name==3):
Bigolive=url_list[3]
checking_url=[Bigolive,'Bigolive']
checked=checking_url[0],checking_url[1]
elif(name==4):
Omlet=url_list[4]
checking_url=[Omlet,'Omlet']
checked=checking_url[0],checking_url[1]
elif(name==5):
Sgether=url_list[5]
checking_url=[Sgether,'Sgether']
checked=checking_url[0],checking_url[1]
return checked
select_url함수는 선택적 회사 데이터를 가져오기 위한 사전 url 세팅 함수이다.
def GRU_predict(new_sentence):
max_len=90
new_sentence=okt.morphs(new_sentence)
new_words=[word for word in new_sentence if not word in stopwords]
encoded=tokenizer.texts_to_sequences([new_sentence])
pad_new=pad_sequences(encoded,maxlen=max_len)
score=float(GRU_model.predict(pad_new))
percentage=score*100
return percentage,new_words
앞서 만들어본 GRU모델은 이미 h5 파일로 저장되어있다. 그러므로 이걸 불러서 사용하기만 하면 된다.
이메일 전송기능도 준비하자.
'Projects' 카테고리의 다른 글
Intern Project 3. 메인 기능 함수 만들기(2) (0) | 2021.01.13 |
---|---|
Intern Project 3. 메인 기능 함수 만들기(1) (0) | 2021.01.13 |
Intern Project 2. 사전 준비 함수(3) (0) | 2021.01.13 |
Intern Project 2. 사전 준비 함수(2) (0) | 2021.01.13 |
Intern Project1. GRU 기법을 활용한 감성 분석 핵심 엔진 만들기 (0) | 2021.01.13 |