QA Engineering/Tool & Automation

검색 쿼리 encode, url 파싱

일해라폴폴 2023. 11. 3. 17:59
반응형

최근 한경한경 자동화를 또 하고 있어서, 내용을 정리해 봅니다
목표는 오늘자 한경 당잠사 문구를 검색 하여, 조건에 맞는 당잠사 링크를 가지고 옵니다
당잠사 링크를 https://downsub.com/ 링크 내에서 스크립트만 따로 txt 형태로 저장 하는 자동화 스크립트 입니다

# 오늘 날짜를 통해 검색 쿼리를 "날짜", "당잠사"를 검색 해줄수 있게 인코딩 해줍니다
today = datetime.date.today()
formatted_date = today.strftime("%m/%d [당잠사]")
encoded_date = urllib.parse.quote(formatted_date)

def get_htmlParse ():
    html = driver.find_element(By.ID, 'title-wrapper').get_attribute('innerHTML')
    soup = BeautifulSoup(html.encode("utf-8"),'html.parser')
    find_text = soup.find_all(class_='yt-simple-endpoint style-scope ytd-video-renderer')
    elements = find_text
    for url in elements:
        today_title = url.get('title')
        today_href = url.get('href')
        
    return today_title, today_href

def get_txtFile ():
    print (downsub_transfer_url)
    driver.get (downsub_transfer_url)
    driver.implicitly_wait(2)
    txt_btn = driver.find_element(By.XPATH, '//*[@id="app"]/div/main/div/div[2]/div/div[1]/div[1]/div[2]/div[1]/button[2]')
    ActionChains(driver).move_to_element(txt_btn).perform()
    driver.implicitly_wait(2)
    txt_btn.click()

 

def get_htmlParse ():

화면의 특정 id를 가진 html 영역을 선택 하여, soup을 이용하여 파싱 합니다
여기에서 특정 클래스를 가진 부분을 검색 해 그 안에서 제목과 url 을 가지고 옵니다

def get_txtFile ():

위에서 가지고 온 url을 가지고 다시 검색 쿼리를 만들어 https://downsub.com/ 에서 검색을 합니다

검색이 되면, txt를 다운로드 해서 내 pc에 저장 합니다

 

이러면 매일매일 경제 정보를 확인할 수 있습니다

 

반응형