파이썬 프로그래밍

파이썬 셀레니움 크롬 프로필 생성 및 쿠키 사용하기

코니코니 2022. 10. 1. 15:00
반응형

파이썬 셀레니움 크롬 프로필 생성 및 쿠키 사용하기


보통 파이썬에서 셀레니움을 사용하면 초기화된 상태의 깨끗한 크롬이 열리게 됩니다. 하지만 여러 쿠키 데이터를 사용해야 하는 경우도 있기 때문에 다양한 방법으로 쿠키값을 설정할 수 있는데요. 쿠키값을 사용하는 대표적인 3가지 방법으로는 디버깅 모드와 pickle 모듈 사용, 그리고 프로필 생성 후 프로필 데이터를 불러오는 방법이 있습니다. 오늘은 그중에서도 프로필 생성 후 쿠키값을 가져오는 방법에 대해서 알아보도록 하겠습니다.

활용법은 매우 간단합니다. 파이썬에서 크롬 프로필을 생성한 후 셀레니움으로 크롬을 열어주고 쿠키를 쌓아주면 됩니다. 그리고 다음에 해당 프로필을 셀레니움으로 불러오면 기존에 쌓아놨던 쿠키값이 그대로 들어가 있는 것을 볼 수 있습니다.

from selenium import webdriver
 
 
options = webdriver.ChromeOptions()
options.add_argument(r'user-data-dir=C:\Users\test\AppData\Local\Google\Chrome\User Data\Profile 1')
options.add_argument(f'user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) '
                     f'Chrome/96.0.4664.93 Safari/537.36')
path = 'chromedriver.exe'
driver = webdriver.Chrome(path, options=options)
driver.implicitly_wait(5)
driver.get('https://www.google.com/')

위 코드에서 add_argument로 추가된 user-data-dir를 보면 User Data\Profile 1로 마무리가 되는 경로를 볼 수 있습니다. 해당 코드로 설정한 경로에 Profile 1이라는 새로운 프로필을 생성하게 됩니다. 프로필 이름은 자유롭게 설정이 가능합니다. 이렇게 생성이 된 프로필은 앞으로 계속해서 크롬 사용기록과 쿠키 등이 저장됩니다.

설정한 경로에 프로필 폴더가 생성된 것을 볼 수 있습니다. 최초로 user-data-dir에 새로운 경로의 프로필을 입력한 경우에는 프로필 폴더가 생성되며, 이후에 해당 경로를 사용할 때는 기존 생성된 프로필 데이터를 그대로 가져오면서 크롬이 열리게 됩니다.

user-data-dir에 경로를 넣어주지 않으면 초기화가 된 크롬이 열리지만 기존 프로필 경로를 넣어주고 크롬 작업을 하는 경우 위 이미지와 같이 사용했던 이력들이 그대로 저장이 된 상태로 크롬이 열리게 됩니다. 이런 방법으로 하나 뿐만 아니라 여러 프로필을 생성 후 쿠키값을 관리할 수 있습니다.

반응형