네이버 자동화 실습 관련 질의
447
작성한 질문수 2
Copy Selector를 이용하여 받는사람 구역의 Selector를 복사해서 가져왔으나 코드 실행 중 에러가 발생합니다. no such element라는 것으로 보아 Selector를 못받는거 같은데 어떻게 해야될까요?
driver.find_element(By.CSS_SELECTOR,"#recipient_input_element").send_keys("xxxx@naver.com")
time.sleep(0.5)
Traceback (most recent call last):File "c:\Excel\02. 데스크탑 자동화\2.네이버 로그인 자동화.py", line 44, in <module>driver.find_element(By.CSS_SELECTOR,"#recipient_input_element").send_keys("xxxx@naver.com")^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "C:\Users\thkim\AppData\Local\Programs\Python\Python312\Lib\site-packages\selenium\webdriver\remote\webdriver.py", line 742, in find_elementreturn self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"]^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^File "C:\Users\thkim\AppData\Local\Programs\Python\Python312\Lib\site-packages\selenium\webdriver\remote\webdriver.py", line 348, in executeself.error_handler.check_response(response)File "C:\Users\thkim\AppData\Local\Programs\Python\Python312\Lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 229, in check_responseraise exception_class(message, screen, stacktrace)selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"#recipient_input_element"}(Session info: chrome=120.0.6099.217); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exceptionStacktrace:GetHandleVerifier [0x00007FF675932142+3514994](No symbol) [0x00007FF675550CE2](No symbol) [0x00007FF6753F76AA](No symbol) [0x00007FF675441860](No symbol) [0x00007FF67544197C](No symbol) [0x00007FF675484EE7](No symbol) [0x00007FF67546602F](No symbol) [0x00007FF6754828F6](No symbol) [0x00007FF675465D93](No symbol) [0x00007FF675434BDC](No symbol) [0x00007FF675435C64]GetHandleVerifier [0x00007FF67595E16B+3695259]GetHandleVerifier [0x00007FF6759B6737+4057191]GetHandleVerifier [0x00007FF6759AE4E3+4023827]GetHandleVerifier [0x00007FF6756804F9+689705](No symbol) [0x00007FF67555C048](No symbol) [0x00007FF675558044](No symbol) [0x00007FF6755581C9](No symbol) [0x00007FF6755488C4]BaseThreadInitThunk [0x00007FFA3FB2257D+29]RtlUserThreadStart [0x00007FFA40FEAA58+40]
답변 1
-1
안녕하세요, 인프런 AI 인턴입니다.
saurabi8님, ‘no such element’ 예외는 드라이버가 CSS 선택자로 해당 요소를 찾지 못할 때 발생합니다.
문제를 해결하기 위한 몇 가지 방법을 제시드리겠습니다.
1. 대기 시간 설정: 웹 페이지가 완전히 로드되기 전에 요소를 찾으려 할 수 있어요. 페이지가 완전히 로드될 때까지 기다리는 WebDriverWait을 활용해 보세요.
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(driver, 10)
element = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, "#recipient_input_element")))
element.send_keys("xxxx@naver.com")
정확한 선택자 확인: 개발자 도구를 이용하여 선택자가 정확한지 다시 한 번 확인하세요. ‘recipient_input_element’가 정확한 id인지, 해당 요소가 iframes 내부에 위치해 있지 않은지 체크해볼 필요가 있습니다.
프레임 전환: 해당 요소가 iframe 내부에 있을 경우,
driver.switch_to.frame()메서드를 사용하여 해당 프레임으로 전환한 후 요소를 찾아야 합니다.
위의 방법들을 시도해 보시고, 여전히 문제가 해결되지 않는다면, 페이지의 구조가 바뀌었거나 해당 요소에 다른 id 혹은 클래스가 사용되었을 수 있습니다. 이 경우 다시 한 번 웹 페이지를 검사하여 올바른 선택자를 사용하고 있는지 확인해보세요.
도움이 되셨길 바랍니다!
선생님 셀에서 전체 실행은 어떻게하나요?
0
85
2
전자는 보안때매 안되나요?
0
149
2
보고서, 데이터, 계산서 자동 정리 프로그램 오류
0
207
1
사이트 접속 후 로그인 버튼 클릭 시 문제점
0
280
3
엑셀 파일 제목 중복되면 (1),(2) 씩 늘어나게 해서 생성하게 하기
0
406
1
엑셀 다루기 기초에서 날짜 1일씩 늘어나게 하기
0
846
1
크롬창이 자꾸 꺼져요!!
0
911
1
mouseInfo
0
284
1
pyautogui.mousInfo() 질문(영상 11:03)
0
220
2
네이버 메일 자동화 실습 문의
0
371
1
pip명령이 vscode 명령프롬프트에서만 않되네요
0
4448
2
매출데이터 생성 price 오류
0
365
2
pyautogui.center(pyautogui.locateOnScreen('wmp.PNG', grayscale=True, confidence=0.7)) 좌표 이상
0
537
2
블로그에 강의 코드를 정리해서 올려도 괜찮을까요??
0
407
1
Chrome version 116, Selenium version 4.11.2 이후
0
718
1
python upgrade 후 selenium 인식 불가
0
808
1
Google Chrome 업데이트 이후 크롬드라이브 실행 오류
0
2156
2
크롬드라이브 실행 오류
1
15384
4
오프라인 pip설치문의
0
1230
2
네이버 메일 자동화, 메일 창이 새탭에 생성
0
906
1
팝업 설명창?
0
418
1
셀레니움 기초 사용법
0
544
1
키보드 자동화_소문자 ko 입력 안되는 이유 질문 드려요
0
486
1
TypeError: 'module' object is not callable 이런 오류가 뜹니다
0
731
1





