[파이썬] Selenium 웹 테이블 다루기
Selenium은 웹 자동화 도구로, 웹 브라우저 테스트를 자동화하는 데 사용됩니다. 이번 글에서는 Selenium을 사용하여 웹 테이블을 다루는 방법을 알아보겠습니다. Python 언어를 이용하여 Selenium을 활용하는 예시 코드들을 제시하겠습니다.
필요한 패키지 설치하기
먼저, Selenium 패키지를 설치해야 합니다. 다음의 명령어를 사용하여 패키지를 설치할 수 있습니다:
pip install selenium
웹 드라이버 설정하기
Selenium을 사용하기 위해서는 웹 드라이버가 필요합니다. 웹 드라이버는 브라우저별로 제공되며, 원하는 브라우저에 맞춰 설치해야 합니다. 예를 들어, 크롬 브라우저를 사용할 경우 크롬 드라이버를 설치해야 합니다.
크롬 드라이버는 다음의 링크에서 다운로드할 수 있습니다: 크롬 드라이버 다운로드
Selenium 웹 테이블 다루기의 기본 코드
다음은 Selenium을 사용하여 웹 테이블을 다루는 기본적인 예시 코드입니다:
from selenium import webdriver
# 웹 드라이버 설정
driver = webdriver.Chrome('/path/to/chromedriver')
# 웹 사이트 열기
driver.get('http://example.com')
# 웹 테이블 요소 찾기
table = driver.find_element_by_xpath('//table')
# 모든 행 가져오기
rows = table.find_elements_by_tag_name('tr')
# 각 행에 대해 데이터 추출하기
for row in rows:
data = row.find_elements_by_tag_name('td')
for cell in data:
print(cell.text)
# 웹 드라이버 종료
driver.quit()
웹 테이블에서 정보 추출하기
웹 테이블의 특정 데이터나 모든 데이터를 추출할 수 있습니다. 예를 들어, 테이블의 첫 번째 열의 데이터만 가져오는 코드는 다음과 같습니다:
from selenium import webdriver
driver = webdriver.Chrome('/path/to/chromedriver')
driver.get('http://example.com')
table = driver.find_element_by_xpath('//table')
rows = table.find_elements_by_tag_name('tr')
for row in rows:
data = row.find_elements_by_tag_name('td')
# 첫 번째 열의 데이터 출력하기
print(data[0].text)
driver.quit()
웹 테이블 내 데이터 변경하기
Selenium을 사용하면 웹 테이블 내의 데이터를 변경할 수도 있습니다. 예를 들어, 테이블의 특정 셀 값을 변경하는 코드는 다음과 같습니다:
from selenium import webdriver
driver = webdriver.Chrome('/path/to/chromedriver')
driver.get('http://example.com')
table = driver.find_element_by_xpath('//table')
rows = table.find_elements_by_tag_name('tr')
# 테이블의 첫 번째 행의 데이터 변경하기
data = rows[0].find_elements_by_tag_name('td')
data[0].clear()
data[0].send_keys("New Value")
# 변경된 테이블 저장하기
# (저장 버튼 등이 있다면 해당 버튼 클릭 코드를 추가해야 함)
driver.quit()
Selenium을 사용하여 웹 테이블을 다루는 방법에 대해 알아보았습니다. 이를 활용하여 웹 자동화 작업을 수행하고 웹 테이블의 데이터를 추출하거나 변경할 수 있습니다.
더 자세한 내용은 Selenium 공식 문서를 참고하시기 바랍니다.