전체 글8 파이썬 크롤링 아이디 비밀번호 맞는데 로그인 안 될 때 로그인 크롤링을 할 때 아이디와 비밀번호를 정확히 넣었는데도 계속 로그인에 실패하는 경우가 있습니다. 계정 정보가 잘못된 줄 알았는데, 알고 보니 화면에 안 보이는 숨겨진 값이 빠져 있었습니다. 이번 글에서는 로그인 폼 분석이 왜 중요한지, 토큰 누락 문제를 어떻게 확인하고 해결했는지 정리했습니다. 아이디와 비밀번호만 보내면 로그인되지 않는 이유 처음 로그인 크롤링을 할 때 가장 많이 하는 생각은 단순합니다. 로그인 화면에 아이디 입력칸과 비밀번호 입력칸이 있으니, 코드에서도 그 두 값만 보내면 끝날 것 같다는 판단입니다. 실제로 저도 requests.post()에 아이디와 비밀번호를 넣고 실행해봤는데, 응답 코드는 정상처럼 보였지만 로그인은 되지 않았습니다. 회원 페이지로 이동하면 다시 로그인 화면이.. 2026. 3. 29. 파이썬 크롤링 로그인 후 데이터 수집 실패 크롤링을 하다 보면 로그인까지는 분명 성공한 것처럼 보이는데, 막상 회원 전용 페이지로 들어가면 다시 로그인 화면으로 돌아가는 경우가 있습니다. 처음에는 아이디나 비밀번호가 틀린 줄 알았지만 알고 보니 로그인 정보가 아니라 세션과 쿠키 유지 방식 문제였습니다. 이번 글에서는 로그인 후 데이터 접근이 왜 자꾸 실패하는지, requests.Session으로 어떻게 해결했는지 정리했습니다. 로그인 후 페이지 접근이 막히는 이유부터 이해해야 합니다 로그인 페이지 크롤링이 어려운 이유는 단순히 로그인 요청 한 번만 보내면 끝나는 구조가 아니기 때문입니다. 브라우저는 로그인에 성공하면 서버로부터 쿠키를 받고, 이후 다른 페이지에 접근할 때도 그 쿠키를 계속 함께 보냅니다. 서버는 이 쿠키를 보고 "이미 로그인한 .. 2026. 3. 28. 파이썬 크롤링 동적페이지 셀레니움 요소 못 찾을 때 해결 동적 페이지 문제를 해결하려고 Selenium으로 바꿨는데도, 이번에는 find_element에서 바로 막히는 경우가 있습니다. 저도 브라우저는 분명 열렸고 화면에도 요소가 보이는데, 코드에서는 NoSuchElementException이 계속 나와 한동안 선택자만 고쳐 가며 시간을 썼습니다. 알고 보니 선택자 문제가 아니라 로딩 시점, iframe, 동적으로 바뀌는 구조를 제대로 안 본 게 원인이었습니다. 브라우저에는 보이는데 Selenium은 요소를 못 찾았습니다 처음에는 Selenium으로 페이지를 열기만 하면 필요한 값을 바로 잡을 수 있을 줄 알았습니다. driver.get()으로 페이지를 연 뒤 개발자도구에서 본 선택자를 그대로 넣어 find_element(By.CSS_SELECTOR, ".... 2026. 3. 27. 파이썬 크롤링 동적 페이지 해결 크롤링을 하다 보면 브라우저에서는 분명 값이 보이는데, requests로 가져오면 빈 결과만 나오는 순간이 있습니다. 저도 처음에는 선택자를 잘못 적은 줄 알았지만, 실제 원인은 페이지가 처음부터 HTML에 데이터를 담고 있지 않고 JavaScript 실행 이후에 값을 만들어 붙이는 구조였습니다. 이번 글에서는 제가 직접 겪은 흐름대로, 왜 브라우저에서는 보이는데 코드에서는 안 보였는지 확인하고, 언제 requests를 유지하고 언제 Selenium으로 바꿔야 하는지 정리하겠습니다. 브라우저에서는 보이는데 requests에서는 안 보였던 이유를 찾았습니다처음 문제는 단순했습니다. 브라우저로 페이지를 열면 제목, 가격, 목록 데이터가 분명히 보였는데, 파이썬에서 requests.get()으로 받아 res.. 2026. 3. 27. 파이썬 크롤링 넌타입 오류 해결 크롤링을 하다 보면 분명 개발할 때는 잘 될 것 같았는데, 막상 .text를 붙이는 순간 NoneType 오류로 코드가 멈추는 일이 자주 생깁니다. 저도 처음에는 단순 문법 실수라고 생각했지만, 실제 원인은 HTML 구조를 잘못 이해했거나 없는 태그를 당연히 있다고 가정한 데 있었습니다. 이번 글에서는 제가 직접 겪은 흐름대로, 왜 이런 오류가 생겼는지 확인하고 어떻게 중단 없는 수집 코드로 바꿨는지 정리하겠습니다. HTML 구조를 잘못 이해했을 때 NoneType 오류가 났습니다 처음 문제는 아주 단순했습니다. 특정 상품명이나 제목을 가져오려고 soup.find(...).text처럼 작성했는데, 실행하자마자 AttributeError: 'NoneType' object has no attribute '.. 2026. 3. 26. 파이썬 크롤링 오류 403·429 해결 크롤링을 처음 돌릴 때 가장 당황스러운 순간은 브라우저에서는 페이지가 잘 열리는데, 파이썬 코드로만 요청하면 갑자기 막히는 경우입니다. 저도 같은 주소를 직접 열면 정상인데 requests.get()으로 접근했을 때 403 Forbidden이나 429 Too Many Requests가 반복되어, 코드가 틀린 줄 알고 한참 헤맸습니다. 이번 글은 그때 제가 실제로 점검한 순서와, 어떻게 요청을 조금 더 자연스럽게 바꿨더니 차단 빈도가 줄었는지를 중심으로 정리한 기록입니다. 403은 서버가 요청을 이해했지만 처리하지 않겠다는 뜻이고, 429는 일정 시간 안에 너무 많은 요청을 보냈다는 뜻입니다. requests는 헤더를 직접 dict로 넘겨 설정할 수 있어 이런 상황에서 기본 점검에 적합합니다. 브라우저는.. 2026. 3. 26. 이전 1 2 다음