반응형
만들면서 배우는 파이썬과 40개의 작품들 책을 보며 실습했다.
책이 출간된 시기와 현재의 selenum 버전이 달라지면서 css_selector에 관한 문법이 달라졌다.
from webdriver_manager.chrome import ChromeDriverManager
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome(ChromeDriverManager().install())
URL = 'https://www.signal.bz/'
driver.get(url=URL)
driver.implicitly_wait(time_to_wait=10)
naver_results = driver.find_elements(By.CSS_SELECTOR,'#app > div > main > div > section > div > section > section > div > div > div > div > a > span.rank-text')
naver_list=[]
for naver_result in naver_results:
print(naver_result.text)
naver_list.append(naver_result.text)
URL = 'https://www.nate.com/'
driver.get(url=URL)
driver.implicitly_wait(time_to_wait=10)
driver.find_element(By.CSS_SELECTOR, '#olLiveIssueKeyword > li:nth-child(1) > a > span.txt_rank').click()
nate_results = driver.find_elements(By.CSS_SELECTOR,'#search-option > form > fieldset > div.issue-kwd > span > a')
nate_list=[]
for nate_result in nate_results:
print(nate_result.text)
nate_list.append(nate_result.text)
import time
URL = 'https://zum.com/'
driver.get(url=URL)
driver.implicitly_wait(time_to_wait=10)
driver.find_element(By.CSS_SELECTOR, '#search-input').send_keys("아무거나 검색")
time.sleep(0.5)
driver.find_element(By.CSS_SELECTOR, '#app > div > header > div.search_bar > div > fieldset > div > button.search').click()
time.sleep(1)
zoom_results = driver.find_elements(By.CSS_SELECTOR, '#issue_wrap > ul > li > div > a:nth-child(1) > span.txt')
print(type(zoom_results)) #list 타입으로 나옴.
zoom_list = []
for zoom_result in zoom_results:
print(zoom_result.text)
zoom_list.append(zoom_result.text)
변수에 텍스트 여러개를 넣으면 알아서 리스트 타입으로 바뀐다.
print("네이버", naver_list)
print("네이트", nate_list)
print("줌", zoom_list)
반응형
'프로그래밍 > 파이썬 공부' 카테고리의 다른 글
[파이썬] 판다스로 데이터프레임을 엑셀로 저장하기 (0) | 2023.08.29 |
---|---|
슬랙봇 제작 시 참고자료 주소 (0) | 2023.06.05 |
streamlit write() 함수 오류 (0) | 2023.05.29 |
웹 크롤링을 할 때 법적으로 주의해야 하는 사항 (0) | 2023.03.07 |
파이썬 웹 크롤링 학습 과정 (0) | 2023.03.07 |