네이버 로그인
567
김동호
작성한 질문수 12
0
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
# 크롬 드라이버 자동 업데이트
from webdriver_manager.chrome import ChromeDriverManager
import time
import pyautogui
import pyperclip
# 브라우저 꺼짐 방지
chrome_options = Options()
chrome_options.add_experimental_option("detach", True)
#불필요한 에러 메시지 없애기
chrome_options.add_experimental_option("excludeSwitches", ["enable-logging"])
service = Service(executable_path=ChromeDriverManager().install())
driver = webdriver.Chrome(service=service, options=chrome_options)
# 웹페이지 해당 주소 이동
driver.implicitly_wait(5)
driver.maximize_window()
driver.get("https://nid.naver.com/nidlogin.login")
# 아이디 입력창
id = driver.find_element(By.CSS_SELECTOR, "#id")
id.click()
pyperclip.copy("******")
pyautogui.hotkey("command", "v")
time.sleep(2)
# 비밀번호 입력창
pw = driver.find_element(By.CSS_SELECTOR, "#pw")
pw.click()
pyperclip.copy("********")
pyautogui.hotkey("command", "v")
time.sleep(2)
# 로그인 버튼
login_btn = driver.find_element(By.CSS_SELECTOR, "#log\.login")
login_btn.click()
로그인과 비밀번호
실행할 때마다 v로 아님 없음으로 또는 비밀번호만 눌러지고 하네요
정확도가 많이 떨어집니다.
답변 1
0
안녕하세요.
코딩을 가장 쉽게 알려주는 크리에이터 스타트코딩입니다.
pyautogui 대신
아래와 같이 send_keys를 이용해서 CTRL + V 를 동작시켜 보시기 바랍니다.
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
# 크롬 드라이버 자동 업데이트
from webdriver_manager.chrome import ChromeDriverManager
import time
import pyautogui
import pyperclip
# 브라우저 꺼짐 방지
chrome_options = Options()
chrome_options.add_experimental_option("detach", True)
# 불필요한 에러 메시지 없애기
chrome_options.add_experimental_option("excludeSwitches", ["enable-logging"])
service = Service(executable_path=ChromeDriverManager().install())
driver = webdriver.Chrome(service=service, options=chrome_options)
# 웹페이지 해당 주소 이동
driver.implicitly_wait(5) # 웹페이지가 로딩 될때가지 5초는 기다림
driver.maximize_window() # 화면 최대화
driver.get("https://nid.naver.com/nidlogin.login?mode=form&url=https%3A%2F%2Fwww.naver.com")
# 아이디 입력창
id = driver.find_element(By.CSS_SELECTOR, "#id")
id.click()
pyperclip.copy("******")
id.send_keys(Keys.CONTROL, 'v')
time.sleep(2)
# 비밀번호 입력창
pw = driver.find_element(By.CSS_SELECTOR, "#pw")
pw.click()
pyperclip.copy("*****")
pw.send_keys(Keys.CONTROL, 'v')
time.sleep(2)
# 로그인 버튼
login_btn = driver.find_element(By.CSS_SELECTOR, "#log\.login")
login_btn.click()
셀레니움 환경설정 오류
0
46
2
네이버 로그인 관련
0
255
2
안녕하세요 셀레니움에 대해서 질문
0
85
1
크롤링 연습사이트 문의
0
96
2
선택자 질문
0
71
2
'특정 요소가 나타날 때까지 스크롤' 부분 에러
0
76
2
자동 로그인 질문
0
86
2
44강 제목, 링크
0
105
1
원하는 값이 없을 때
0
89
2
크롤링한 링크가 엑셀로 들어가면 작동이 안되요
0
227
2
셀레니움 PDF자료는 받을 수 있나요
0
100
2
글목록 추출하기
0
97
2
메일 자동화 로그인 중복방지문자해결 오류 및 명시적 대기 질문
0
88
2
강의 노트가 어디에 있는건가요?
0
80
2
강의 커리큘럼 질문
0
98
1
조건문 else 사용하지 않는 이유
0
76
2
셀레니움으로 접근할 수 없는 경우
0
95
2
웹페이지 변경
0
70
2
자바스크립트로 태그 선택 시 질문입니다.
1
64
2
수료증은 어떻게 받나요?
0
120
2
class명을 활용하여 선택자를 만들지 않는 경우..?
0
60
2
드라이버가 안 열려요
0
79
2
이거 해결방법 아시는 분?
0
121
2
네이버 지식인 크롤링..
0
201
2





