[크롤링 기초] svg 태그 찾기 (with xpath 셀레니움) 크롤링을 하다보면 내가 원하는 정보가 svg태그 안에 있는데, svg태그가 검색이 안되는 경우가 있습니다. 아래 태그는 인스타그램에 포함되어있는 좋아요 버튼을 나타내는 svg태그입니다. 분명 존재하죠? 하지만 검색하면 나오지가 않습니다. 왜그럴까요? 왜냐하면 다른 태그와 달리 svg태그를 찾는 방법이 다르기 때문입니다. //*[local-name()='svg'] svg태그는 //*[local-name()='svg'] 로 검색을 하셔야 합니다. 정말 되는지 볼까요? output : 아주 많은 태그가 검색된걸 알 수 있습니다. 이중에서 svg태그 안에있는 aria-label속성값이 "좋아요"인 태그를 뽑고 싶다면 어떻게할까요? (//*[local-name()='svg' and @aria-label="좋아요".. 파이썬/크롤링 2022. 4. 19. [셀레니움 기초] StaleElementReferenceException 오류 해결 StaleElementReferenceException: stale element reference: element is not attached to the page document 다른 블로그 포스팅에서 time.sleep() 주면 해결된다고 하는데 여전히 문제가 해결이 되시지 않는다면, 이 포스팅이 도움이 되실겁니다. 제가 원하는 바는 아래와같이 네이버 쇼핑 검색창에 슬리퍼를 입력하고, 다시 그 부분을 지우고 싶었습니다. search_keyword = driver.find_element(by=By.XPATH, value='//input[@title="검색어 입력"]') search_keyword.send_keys(keyword) search_keyword.send_keys(Keys.RETURN) se.. 파이썬/크롤링 2022. 4. 7. [selenium 기초] 셀레니움 ~ is not clickable at point ~ 오류 해결 방법 이번 포스팅에서는 ~ is not clickable at point ~ 문구로 오류가 발생할 경우 어떻게 해결 해야 하는지 알아 볼게요. 에러 문을 보면 알수 있듯 해당 부분을 셀레니움으로 클릭할 수 없다는 내용입니다. 분명 클릭할 수 있는 부분인것 같은 데 왜 클릭이 안되지 라는 의문이 드시는 분들이 있을 것 같은데요. 이건 태그 특성상 클릭이 안되는 부분일 가능성이 높습니다. 예를 통해 설명을 드려보겠습니다. 저는 네이버 쇼핑몰에서 해당 더보기 버튼을 누르고 싶습니다. 개발자창을 확인해보니, "더보기"라는 text가 있으니까 저부분을 클릭 하면 되겠라고 생각하고 해당부분을 scraping 합니다. 참고로 해당 부분을 xpath로 가져오려면 //*[text()="연관검색어"] 입니다. (xpath에 대.. 파이썬/크롤링 2022. 4. 6. [python 기초] selenium add_arguement()를 이용한 headless 및 여러가지 기능 배우기 안녕하세요 이번시간에는 셀레니움을 이용하는데 있어 유용한 기술들을 소개하겠습니다. 여러분들에 상황에 맞게 필요한 기능들을 추가하시어 사용하시면 되겠습니다. 1 option 값 객체 설정 1 2 3 4 5 6 from selenium import webdriver from selenium.webdriver.chrome.options import Options chrome_options = Options() # selenium에 여러가지 옵션 값을 추가하기위한 준비 Colored by Color Scripter cs chrome_options 라는 임의의 변수를 지정. 이 변수가 추후에 우리가 원하는 기능을 추가할때 사용되는 변수이다. 2 여러가지 옵션 값 (headless, mute-audio 등) 1 h.. 파이썬/파이썬 기초 2020. 5. 27. [파이썬 기초] 셀레니움(selenium) NoSuchElementException , ElementNotVisibleException 에러 해결 방법 selenium을 통해 크롤링을 하면 'NoSuchElementException , ElementNotVisibleException ' 와 같은 에러를 자주 만나는데요. 이와 같은 에러가 발생하는 이유는 렌더링 되기전에 특정 요소를 찾으려고 했기 때문입니다. 쉽게 말해 아직 웹페이지가 준비도 안되었는데 정보를 긁으려고 하다보니 발생 되는 문제인것이지요. 이와 같은 문제를 해결하려면 어떻게 해야 할까요? 간단합니다. 웹페이지가 준비가 다 될때까지 기다려 주면 됩니다. 파이썬에서는 여러가지 '시간 대기 메소드'가 있는데요. 그 중에서 오늘 알려드릴 메소드는 time.sleep, 명시적대기(implicit wait), 암시적대기(explicit wait) 총 3개 입니다. 각각의 차이점 및 사용법을 알아보겠습.. 파이썬/파이썬 기초 2020. 5. 13. 이전 1 다음