-
Notifications
You must be signed in to change notification settings - Fork 0
Description
좋았던 것(Liked)
- 없음
배운 것(Learned)
- 크롤링
- selenium 데이터 정보 수집 방법
-
webdriver 웹 브라우저 선택
※ driver = webdriver.Chrome() 크롬에서 시작
※ driver.get("홈페이지 주소") -
웹브라우저의 기능 살펴보기 F12
(1) 요소 선택
(2) 클릭상자 선택
(3) 해당 기능을 선택하여 구조를 살펴 보기
ex) 버튼 / 텍스트 내용 -
find_element 위에서 살펴본 기능에 접근하기
find_element("[접근자]", "[클래스 네임]")
By.ID | 태그의 id값으로 추출
By.NAME | 태그의 name값으로 추출
By.XPATH | 태그의 경로로 추출
By.LINK_TEXT | 링크 텍스트값으로 추출
By.PARTIAL_LINK_TEXT | 링크 텍스트의 자식 텍스트 값을 추출
By.TAG_NAME | 태그 이름으로 추출
By.CLASS_NAME | 태그의 클래스명으로 추출
By.CSS_SELECTOR | css선택자로 추출
driver.find_element(By.CSS_SELECTOR, "#gnb_menu > ul:nth-child(1) > li.nth2 > a > span.menu_bg.menu02").click()
-
driver.page_source
현재 페이지 태그를 포함한 데이터 수집 -
BeautifulSoup HTML parser 기능을 포함하는 패키지
- bs.find_all("HTML태그", "[class_ = 클래스 이름] or [id = 아이디 이름]")
태그 정보와 이름만 남기고 수집하는 기능
-
re 정규표현식
p = re.eompile("정규식")
p.findall(str(x)) for x in ismi.findall("태그정보")
태그 정보 안의 정규식이 일치하는 정보만 남긴다. -
기타 주의 사항
- 셀레니움은 현재 제어 하고 있는 브라우저를 기준점을 삼기 때문에
- 제어 하는 브라우저 창을 유지 한 채 작업을 이어나가야 한다.
- 스프링
- Get 방식 / Post 방식 / Put 방식 코딩
- MemberDTO 설계 및 동작 방식 제어
부족했던 것(Lacked)
- 환경 설정 문제 해결
바라는 것(Longed for)
- 없음