본문 바로가기

분류 전체보기25

파이썬 크롤링 로그인 후 데이터 수집 실패 크롤링을 하다 보면 로그인까지는 분명 성공한 것처럼 보이는데, 막상 회원 전용 페이지로 들어가면 다시 로그인 화면으로 돌아가는 경우가 있습니다. 처음에는 아이디나 비밀번호가 틀린 줄 알았지만 알고 보니 로그인 정보가 아니라 세션과 쿠키 유지 방식 문제였습니다. 이번 글에서는 로그인 후 데이터 접근이 왜 자꾸 실패하는지, requests.Session으로 어떻게 해결했는지 정리했습니다. 로그인 자체가 안될 때 파이썬 크롤링 아이디 비밀번호 맞는데 로그인 안 될 때로그인 크롤링을 할 때 아이디와 비밀번호를 정확히 넣었는데도 계속 로그인에 실패하는 경우가 있습니다. 계정 정보가 잘못된 줄 알았는데, 알고 보니 화면에 안 보이는 숨겨진 값이 빠져 있었heeday4753.com 로그인 후 페이지 접근이 막히는.. 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.
파이썬 불용어 제거, 중요한 단어가 사라질 때 해결 방법 프로젝트를 작업할 적에 상품명과 상세설명에서 핵심 키워드만 남기고 싶어서 불용어 제거를 먼저 적용했습니다. 그런데 실제로 돌려보니 잡음은 그대로 남고, 반대로 꼭 남아야 할 단어까지 같이 사라져 결과가 생각보다 좋지 않았습니다. 그래서 불용어를 무작정 지우는 방식에서 벗어나, 중요한 단어를 따로 보호하고 텍스트 정리 순서를 바꾸는 방식으로 수정했고, 그제야 쓸 만한 결과가 나왔습니다. 불용어 제거만으로는 해결되지 않았던 이유처음에는 불용어 목록만 잘 만들면 텍스트가 자연스럽게 정리될 것이라고 생각했습니다. 자주 등장하지만 의미가 약한 단어를 빼면 상품명과 상세설명에서도 핵심 키워드만 남을 것 같았기 때문입니다. 하지만 실제 데이터는 그렇게 단순하지 않았습니다. 문장 안에는 조사, 특수문자, 눈에 잘 띄.. 2026. 3. 23.

소개 및 문의 · 개인정보처리방침 · 면책조항

© 2026 블로그 이름