[Python] 웹 자동화 기초 - 브라우저 열기, 닫기, 탭 이동

2022. 9. 29. 11:05·python/자동화
728x90
반응형

셀레니움 소개

셀레니움은 파이어폭스, 인터넷 익스플로어, 크롬등과 같은 브라우저를 컨트롤 할 수 있게 해줍니다. 현재 파이썬 3.5 이상부터 지원되며 3.6 이상 버전 부터 pip 로 표준 라이브러리로 사용할 수 있습니다.

설치 – install

pip install selenium

드라이버 – driver

Chrome https://sites.google.com/a/chromium.org/chromedriver/downloads
Edge https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
Firefox https://github.com/mozilla/geckodriver/releases
Safari https://webkit.org/blog/6900/webdriver-support-in-safari-10/

브라우저 열기 (chrome)

from selenium import webdriver

driver = webdriver.Chrome('chromedriver.exe')

권장 브라우저 열기 코드

브라우져 열기 옵션 넣기

크롬 브라우저를 열 때 넣을 수 있는 옵션을 셀레니움에서도 사용이 가능하다.

윈도우 사이즈

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('window-size=1920,1080')

driver = webdriver.Chrome('chromedriver.exe', options=options)

헤들리스

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('headless')

driver = webdriver.Chrome('chromedriver.exe', options=options)

창 최대화

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument('start-maximized)

driver = webdriver.Chrome('chromedriver.exe', options=options)

# 또는

driver.maximize_window()

브라우저 닫기

driver.close() #현재 탭 닫기
driver.quit()  #브라우저 닫기

뒤로가기 / 앞으로가기

driver.back() #뒤로가기
driver.forward() #앞으로가기

탭 이동

driver.window_handles[0] #브라우저 탭 객체를 리스트로 반환. [0] 은 인덱싱. 첫번재 탭을 의미

driver.switch_to.window(driver.window_handles[0]) #첫번째 탭으로 이동
driver.switch_to.window(driver.window_handles[1]) #두번째 탭으로 이동
driver.switch_to.window(driver.window_handles[2]) #세번째 탭으로 이동

탭 닫기

driver.switch_to.window(driver.window_handles[0]) #닫을 탭으로 이동 후

driver.close()

 

reference

https://pythondocs.net/selenium/%EC%85%80%EB%A0%88%EB%8B%88%EC%9B%80-%ED%81%AC%EB%A1%A4%EB%9F%AC-%EA%B8%B0%EB%B3%B8-%EC%82%AC%EC%9A%A9%EB%B2%95/

728x90
반응형

'python > 자동화' 카테고리의 다른 글

[Python] 웹 자동화 기초 - 경고창 이동, 쿠키, 자바스크립트 코드 실행  (1) 2022.09.29
[Python] 웹 자동화 기초 - 엘레먼트(클릭, 텍스트, 프레임 이동)  (0) 2022.09.29
[Python] 네이버 뉴스 기사 웹 크롤링 - 매크로  (0) 2022.09.28
[Python] 뉴스의 제목, 날짜, 본문 데이터 가져오기 - 1회성 (매크로아님)  (0) 2022.09.28
[Python] 웹 자동화 (2) - 웹 열고 HTML 태그를 통해 이동하기  (0) 2022.09.28
'python/자동화' 카테고리의 다른 글
  • [Python] 웹 자동화 기초 - 경고창 이동, 쿠키, 자바스크립트 코드 실행
  • [Python] 웹 자동화 기초 - 엘레먼트(클릭, 텍스트, 프레임 이동)
  • [Python] 네이버 뉴스 기사 웹 크롤링 - 매크로
  • [Python] 뉴스의 제목, 날짜, 본문 데이터 가져오기 - 1회성 (매크로아님)
sillon
sillon
꾸준해지려고 합니다..
    반응형
  • sillon
    sillon coding
    sillon
  • 전체
    오늘
    어제
    • menu (614)
      • notice (2)
      • python (68)
        • 자료구조 & 알고리즘 (23)
        • 라이브러리 (19)
        • 기초 (8)
        • 자동화 (14)
        • 보안 (1)
      • coding test - python (301)
        • Programmers (166)
        • 백준 (76)
        • Code Tree (22)
        • 기본기 문제 (37)
      • coding test - C++ (5)
        • Programmers (4)
        • 백준 (1)
        • 기본기문제 (0)
      • 공부정리 (5)
        • 신호처리 시스템 (0)
        • Deep learnig & Machine lear.. (41)
        • Data Science (18)
        • Computer Vision (17)
        • NLP (40)
        • Dacon (2)
        • 모두를 위한 딥러닝 (강의 정리) (4)
        • 모두의 딥러닝 (교재 정리) (9)
        • 통계 (2)
      • HCI (23)
        • Haptics (7)
        • Graphics (11)
        • Arduino (4)
      • Project (21)
        • Web Project (1)
        • App Project (1)
        • Paper Project (1)
        • 캡스톤디자인2 (17)
        • etc (1)
      • OS (10)
        • Ubuntu (9)
        • Rasberry pi (1)
      • App & Web (9)
        • Android (7)
        • javascript (2)
      • C++ (5)
        • 기초 (5)
      • Cloud & SERVER (8)
        • Git (2)
        • Docker (1)
        • DB (4)
      • Paper (7)
        • NLP Paper review (6)
      • 데이터 분석 (0)
        • GIS (0)
      • daily (2)
        • 대학원 준비 (0)
      • 영어공부 (6)
        • job interview (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    백준
    programmers
    Python
    소수
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
sillon
[Python] 웹 자동화 기초 - 브라우저 열기, 닫기, 탭 이동
상단으로

티스토리툴바