파이썬 로그인 자동화: Playwright와 쿠키로 캡챠 문제 해결하기

파이썬 로그인 자동화는 웹 스크래핑, 테스트, 데이터 수집 등 다양한 분야에서 필수적인 기술입니다. 하지만 많은 웹사이트는 봇이나 자동화된 접근을 막기 위해 캡챠(CAPTCHA)를 비롯한 여러 보안 메커니즘을 도입하고 있습니다. 이 때문에 단순히 ID와 비밀번호를 입력하는 방식만으로는 로그인 자동화가 어려워지는 경우가 빈번하게 발생합니다. 특히 복잡한 캡챠는 자동화 툴로는 해결하기가 거의 불가능에 가깝습니다.

이 글에서는 이러한 파이썬 로그인 자동화의 난관을 극복하는 가장 효과적이고 쉬운 방법 중 하나인 쿠키(Cookie) 활용법을 알려드립니다. Playwright와 쿠키를 함께 사용하면 캡챠 등의 로그인 장벽을 우회하여 마치 실제 사용자가 로그인한 것처럼 웹사이트에 접속할 수 있습니다. 이 글을 통해 여러분의 로그인 자동화 문제를 시원하게 해결하시길 바랍니다.

Playwright와 쿠키를 활용한 로그인 자동화 문제 해결 과정

로그인 자동화를 위해 쿠키를 사용하는 과정은 크게 두 단계로 나눌 수 있습니다. 첫째, 수동으로 로그인하여 쿠키를 추출하고 저장하는 단계. 둘째, 저장된 쿠키를 Playwright에 로드하여 로그인 상태를 유지한 채 웹사이트에 접속하는 단계입니다.

로그인 후 쿠키 추출 및 저장하기

가장 먼저 할 일은 수동으로 웹사이트에 로그인한 후, 그 로그인 세션 정보를 담고 있는 쿠키를 추출하여 파일로 저장하는 것입니다. 이 과정은 다음과 같은 파이썬 코드로 구현할 수 있습니다.

1. Visual Studio Code 를 실행

프로그램이 실행되면 Open Folder 를 클릭합니다.python-playwright-자동화-로그인-해결하기2.png

2. 프로젝트 폴더 생성

폴더 선택창이 열리면 새로 만들기 -> 폴더를 클릭 -> 프로젝트 이름 입력합니다.

python-playwright-자동화-로그인-해결하기3.png

3. 프로젝트 폴더 선택

생성된 폴더를 선택하고 폴더 선택을 클릭합니다.

python-playwright-자동화-로그인-해결하기4.png

4. 파일생성

New File 을 클릭합니다.

python-playwright-자동화-로그인-해결하기5.png

파일 이름을 입력합니다.

python-playwright-자동화-로그인-해결하기6.png

Create File 을 클릭합니다.python-playwright-자동화-로그인-해결하기7.png

5. Gemini AI 를 활용해 python 코드 작성

Gemini AI 는 현재 무료로 사용이 가능합니다. 구글 Gemini AI 링크 이 링크로 이동해 아래 프롬프트를 입력합니다.


python 프로그램을 코딩해줘

프로그램의 목적 현재 로그인된 페이지의 쿠키값을 {domain}.json 파일로 저장

프로그램 진행 과정

1. playwright 실행 후 사용자가 쿠키파일이름을 입력할 때 까지 대기

2. 사용자가 브러우저를 사용해 쿠키를 생성하기 위한 페이지로 이동후 로그인 처리 완료

3. 사용자가 쿠키파일이름을 입력하면 쿠키값을 json 파일로 저장하고 종료

코드가 완성되면 복사 버튼을 눌러 코드를 복사합니다.

python-playwright-자동화-로그인-해결하기9.png

6. python 코드 붙여넣기 및 실행

Visual Studio Code 로 돌아와 생성해둔 파일에 python 코드를 붙여넣기 해줍니다.

python-playwright-자동화-로그인-해결하기10.png

그리고 python 쿠키 생성 코드를 실행합니다.

python-playwright-자동화-로그인-해결하기11.png

playwright 라이브러리 관련 오류가 발생하면 설치해줍니다.


pip install playwright
playwright install

 

python-playwright-자동화-로그인-해결하기12.png

7. 홈페이지 로그인 및 쿠키 생성

프로그램이 실행되면 브라우저가 열립니다. 로그인 자동화를 하고 싶은 페이지로 이동후 로그인을 완료해주세요.

python-playwright-자동화-로그인-해결하기14.png

로그인이 완료 되었습니다.

python-playwright-자동화-로그인-해결하기15.png

로그인이 완료되면 Visual Studio Code 프로그램 아래쪽에 TEMINAL 부분을 확인하면 쿠키 파일 이름을 입력하세요 부분에 도메인 이름등을 입력합니다. 그러면 해당 이름으로 json 파일로 쿠키가 저장됩니다. 이제 이 파일을 사용하면 로그인 처리를 자동화 할 수 있습니다.

python-playwright-자동화-로그인-해결하기16.png

저장된 쿠키로 로그인 상태 복원 및 페이지 이동하기

1. 파일 생성


로그인 자동화를 위한 파일을 생성합니다. Visual Studio Code 왼쪽 부분에 폴더 가 보이는데 빈부분에 마우스 오른쪽을 클릭하고 New File 을 클릭합니다. 그리고 파일 이름을 입력합니다.

python-playwright-자동화-로그인-해결하기17.png

2. Gemini AI 에 코드 요청

 

python 프로그램을 코딩해줘
프로그램의 목적 : 쿠키 파일을 이용해 로그인 처리를 한 playwright 사용
1. 프로그램이 시작되면 쿠키 파일의 이름 과 도메인을 입력받기위해 대기
2. 사용자가 쿠키 파일의 이름과 도메인을 입력하면 해당 파일을 사용해 playwright 에 쿠키 파일 적용 후 해당 도메인으로 이동

python-playwright-자동화-로그인-해결하기18.png

생성된 python 쿠키를 사용한 로그인 코드를 방금 생성했던 파일에 붙여넣기 합니다.

3. 쿠키를 활용한 로그인 프로그램 사용

프로그램을 실행합니다.

python-playwright-자동화-로그인-해결하기19.png

실행이 되면 쿠키 파일 이름과 이동할 도메인 주소를 입력하면 쿠키가 로드되고 브라우져에 적용됩니다.

python-playwright-자동화-로그인-해결하기20.png

브라우져가 실행되면 로그인 처리가 되어있는것을 확인하실 수 있습니다. python-playwright-자동화-로그인-해결하기21.png

 

파이썬 로그인 자동화, 쿠키로 더 강력해지다

이 글에서 살펴본 것처럼, 파이썬 로그인 자동화는 캡챠와 같은 보안 장벽 때문에 때로는 복잡해질 수 있습니다. 그러나 Playwright쿠키를 효과적으로 활용하면 이러한 문제를 매우 쉽게 해결할 수 있습니다. 처음 한 번만 수동으로 로그인하여 쿠키를 저장해두면, 이후에는 해당 쿠키를 사용하여 캡챠 입력 없이도 원하는 웹사이트에 로그인 상태로 접근할 수 있습니다.

이 방법은 웹 스크래핑, 자동화된 테스트, 개인 데이터 백업 등 다양한 자동화 작업에 유용하게 적용될 수 있습니다. 쿠키를 통해 파이썬 로그인 자동화의 새로운 가능성을 열고, 더 효율적인 작업을 수행하시길 바랍니다.