반응형
파이썬의 selenium을 활용하여 텍스트 입력란에 자동 입력을 진행하는 경우,
홈페이지의 구조에 따라서 개행 문자인 '\n'이 일반 공백처럼 인식되어
줄 바꿈이 안되는 경우가 발생할 수 있습니다.
이럴 때, 엔터 키를 입력하여 줄 바꿈을 진행하면 해결이 가능한 경우가 있는데요.
이번 글에서 예시 코드를 간략하게 정리하여 살펴보도록 하겠습니다.
텍스트 입력 줄 바꿈 기본 방법 예제
개행행 문자가 포함된 문자열을 셀레니움을 통하여 텍스트 입력창에 입력하려는 경우,
일반적으로는 다음 코드처럼 진행하게 됩니다.
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
txt_box = driver.find_element(By.NAME, 'txt_box_name') # 텍스트 입력 박스 탐색
txt_box.send_keys('첫 번째 줄\n두 번째 줄\n세 번째 줄') # 텍스트 입력
그러나, 홈페이지 설정에 따라서 일부 경우에서는 위의 코드에서 줄 바꿈이
제대로 인식되지 않고 단순 공백처럼 보일 수 있습니다.
반응형
해결법: Enter 키 입력을 활용하여 줄 바꿈 시도
위와 같은 경우에는 엔터 키를 입력하면 줄 바꿈이 되는 원리를 이용하여
해당 문제의 해결을 시도해볼 수 있습니다.
위의 예시를 엔터 키 입력 줄 바꿈 방식으로 바꾼 코드 예제는 아래와 같습니다.
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
txt_box = driver.find_element(By.NAME, 'txt_box_name') # 텍스트 입력 박스 탐색
txt = '첫 번째 줄\n두 번째 줄\n세 번째 줄' # 입력할 텍스트
lines = txt.split('\n') # 각 줄별로 분리
for i, line in enumerate(lines):
txt_box.send_keys(line)
if i != len(lines) - 1: # 마지막 줄을 제외하고 엔터 키 입력
txt_box.send_keys(Keys.ENTER)
'Python > Crawling' 카테고리의 다른 글
파이썬 Selenium으로 Network 패킷 크롤링 예제 (0) | 2024.06.21 |
---|---|
셀레니움 h1, strong 등 HTML 태그 적용 텍스트 삽입 방법 예제 (0) | 2023.09.26 |
파이썬 초간단 주식 정보 크롤링 예제 : BeautifulSoup(bs4) 이용 (2) | 2022.01.12 |