[ Python ] 파이썬 selenium 크롤링 페이지 위치 값 읽기 - selenium.webdriver.common.by

[ Python ] 파이썬 selenium 크롤링 페이지 위치 값 읽기 - selenium.webdriver.common.by



1. Python Selenuim 설치

    pip install selenium



2. Python Selenium 브라우저 실행

from selenium import webdriver
from selenium.webdriver.common.by import By

# 크롬 실행
Chrome = webdriver.Chrome('./chromedriver')
# 3초 대기
Chrome.implicitly_wait(3)
# 네이버 사이트 이동
Chrome.get('http://www.naver.com')



3. 웹 브라우저 검사 페이지 진입

    브라우저 [우 클릭]
    검사 [클릭]



4. 검사 툴 Elements 소스 에서 위치 찾기

    마우스를 가져가면 현재 가리키고 있는 위치 선택



5. 페이지 에서 선택 하여 위치 찾기

    Seleect an element in the page to inspect it [클릭]
    페이지 에서 원하는 위치 [선택]




6. 페이지 위치 가져오기 종류

class By:
    """Set of supported locator strategies."""

    ID = "id"
    XPATH = "xpath"
    LINK_TEXT = "link text"
    PARTIAL_LINK_TEXT = "partial link text"
    NAME = "name"
    TAG_NAME = "tag name"
    CLASS_NAME = "class name"
    CSS_SELECTOR = "css selector"


7. ID 데이터 찾기


# ID 데이터 가져오기
VarElement = Chrome.find_element(By.ID, 'shortcutArea')
# text 가져오기
StrText = VarElement.text
print(StrText)

메일
카페
블로그
쇼핑
뉴스
증권
부동산
지도
웹툰
바로가기 펼침


8. XPATH 데이터 찾기

    검색 위치 Elements [우 클릭]
    Copy [클릭]
    Copy XPath [클릭]
    Python [붙여넣기]


# XPATH 데이터 가져오기
VarElement = Chrome.find_element(
    By.XPATH, '//*[@id="shortcutArea"]/ul/li[3]/a/span[2]')
# text 가져오기
StrText = VarElement.text
print(StrText)

블로그


9. LINK_TEXT 데이터 찾기

    TEXT 찾아 다른 정보 가져오기


# LINK_TEXT 데이터 가져오기
VarElement = Chrome.find_element(
    By.LINK_TEXT, '뉴스스탠드')
# text 가져오기
StrText = VarElement.id
print(StrText)

8A4A4F559DCB83D642A795A38AF04AAA_element_18


10. PARTIAL_LINK_TEXT 데이터 찾기

    TEXT 데이터 부분적 찾기

# PARTIAL_LINK_TEXT 데이터 가져오기
VarElement = Chrome.find_element(
    By.PARTIAL_LINK_TEXT, '뉴스스')
# text 가져오기
StrText = VarElement.id
print(StrText)

8A4A4F559DCB83D642A795A38AF04AAA_element_18


11. NAME 데이터 찾기

    이름 찾아 데이터 삽입


# NAME 데이터 값 넣기
VarElement = Chrome.find_element(
    By.NAME, 'query').send_keys('이름 찾기')



12. TAG_NAME 데이터 찾기

    XPATH 범위를 좁히고 TAG_NAME 찾기


# XPATH 데이터 값 넣기
VarElementXPATH = Chrome.find_element(
    By.XPATH, '//*[@id="shortcutArea"]/ul')
# TAG_NAME 데이터 값 넣기
VarElement = VarElementXPATH.find_element(
    By.TAG_NAME, 'li')
# text 가져오기
StrText = VarElement.text
print(StrText)

메일


13. CLASS_NAME 데이터 찾기


# CLASS_NAME 데이터 값 넣기
VarElement = Chrome.find_element(
    By.CLASS_NAME, 'shortcut_list')
# text 가져오기
StrText = VarElement.text
print(StrText)

메일
카페
블로그
쇼핑
뉴스
증권
부동산
지도
웹툰
바로가기 펼침


14. CSS_SELECTOR 데이터 찾기

    CLASS_NAME 앞 TAG_NAME 넣어서 찾기


# CSS_SELECTOR 데이터 값 넣기
VarElement = Chrome.find_element(
    By.CSS_SELECTOR, 'ul.shortcut_list')
# text 가져오기
StrText = VarElement.text
print(StrText)

메일
카페
블로그
쇼핑
뉴스
증권
부동산
지도
웹툰
바로가기 펼침


==========


댓글