diff --git a/DiseaseSelector.py b/DiseaseSelector.py index 15af4ab..2a83198 100644 --- a/DiseaseSelector.py +++ b/DiseaseSelector.py @@ -1,44 +1,43 @@ -import DiseaseFinder -import DiseaseSelector +from requests.api import head -# enter symptoms() 함수를 이용해서 받아오지만, 일부분만 구현했기 때문에 symptomlist에 특정 값을 넣어놓았다. -symptomlist = ['등', '관절통'] -val = DiseaseFinder.DiseaseFinder(symptomlist).checkDisease() -back = 0 # back이 1이면 backbutton이 활성화되었다고 생각하고 그 전 단계로 돌아간다. -if val != None: - # create diseaseList - DiseaseList = [] # 병명, site 주소가 저장되어 있다. - # destory symptom's list - del(symptomlist) - for key in val: # 이름만 따로 저장해서 activate("viewer, DiseaseList") - DiseaseList.append(key) - ###activate("viewer", d) - print(DiseaseList) +class DiseaseSelector: + def __init__(self, url): + self.url = url - # if back==1: - # activate backbutton + prompt - # enter symptoms() + def getUrl(self): + return self.url - # enter selectedDisease() - selectedDisease = '간염(Hepatitis)' - url = url = val[selectedDisease] + def makeSelectedDiseaseInfo(self): + # 크롬 브라우저를 띄우기 위해, 웹드라이버를 가져오기 + from selenium import webdriver + from selenium.webdriver.common.keys import Keys + from selenium.webdriver.support.ui import Select - val = DiseaseSelector.DiseaseSelector( - url).makeSelectedDiseaseInfo() # 선택된 증상, 관련질환, 진료과 등등이 저장 - del(DiseaseList) - selectedDiseaseInfo = {} # 병명, 진료과 저장 - selectedDiseaseInfo['병명'] = selectedDisease - for diseaseinfo in val: - if diseaseinfo == "진료과": # 병명과 진료과만 따로 저장(이후에 UC-5, 6에서 이용하기 위해) - selectedDiseaseInfo[diseaseinfo] = val[diseaseinfo] - ###activate("viewer", selectedDiseaseInfo) - print("selecteDiseaseInfo", selectedDiseaseInfo) - # if back==1: - # activate backbutton + prompt - # enter selectedDisease() + # 크롬 드라이버로 크롬을 실행한다. + chrome_options = webdriver.ChromeOptions() + chrome_options.add_argument('headless') + chrome_options.add_argument('--disable-gpu') + chrome_options.add_argument('lang=ko_KR') + driver = webdriver.Chrome( + r'C:\Users\es344\chromedriver', chrome_options=chrome_options) -else: - # activate backbutton + prompt - print("decrease symptoms") - # enter symptoms() + # 질환백과 페이지로 이동 + driver.get(self.getUrl()) + elemdt = driver.find_elements_by_tag_name('dt') + elemdd = driver.find_elements_by_tag_name('dd') + resultsdt = [] + resultsdd = [] + resultdic = {} + # 검색 결과 모두 긁어서 리스트로 저장 + for eledt in elemdt: + resultsdt.append(eledt.text) + for eledd in elemdd: + resultsdd.append(eledd.text) + index = 0 + while index < len(resultsdt): + resultdic[resultsdt[index]] = resultsdd[index] + # print(resultdic) + index += 1 + #print("here", resultdic) + return resultdic