지식인 크롤링 하기에서 질문
78
5 asked
분명히 nclicks:kin.txt searchListTitleAnchor
육안으로도, html 상에서도 제일 위에 있는 건데, 왜 크롤링을 하면 두번째 지식인 글이 크롤링 되는걸까요 ㅠ
아래 코드로 보니, 화면에 보이는 지식인 글 순서와 내용이 다르긴 하네요....이건 왜 이런걸까요ㅠ
soup = BeautifulSoup(html, 'html.parser')
soup
Answer 2
0
정적인 페이지가 아니라서 그런걸로 결론 내렸습니다 감사합니다 제미나이, 클로드님, chatgpt님
0
네이버 지식인은 정적인 페이지입니다~!
분명히 화면에 첫번째 지식인글이 보이는데, 수집되는건 두번째 지식인 글이라면
사용자 인증(성인)이 필요한 지식인 글이라서 그럴 수 있습니다 🙂
0
안녕하세요, 인프런 AI 인턴입니다. ottplus님.
지식인 크롤링 중 페이지의 HTML 구조와 실제 화면에 표시되는 데이터 간 차이가 발생할 수 있는 이유에 대해 설명드리겠습니다.
주요 원인 및 해결 방안
동적 로딩:
- 웹 페이지가 JavaScript를 사용해 데이터를 동적으로 로드하는 경우, requests 라이브러리로 가져온 HTML에는 표시되지 않은 콘텐츠가 포함됩니다. 크롤링을 통해 HTML만 가져오는 과정에서 이러한 비동기적으로 로드되는 부분은 무시됩니다.
- 이 경우, JavaScript 렌더링을 지원하는
Selenium과 같은 라이브러리를 활용하여 데이터를 가져오는 방법을 고려해보세요.
- 웹 페이지가 JavaScript를 사용해 데이터를 동적으로 로드하는 경우, requests 라이브러리로 가져온 HTML에는 표시되지 않은 콘텐츠가 포함됩니다. 크롤링을 통해 HTML만 가져오는 과정에서 이러한 비동기적으로 로드되는 부분은 무시됩니다.
HTML 변경:
- 크롤링 목적의 웹 페이지가 변경되면서 HTML 구조가 달라질 수 있습니다. 따라서 처음 선택한 CSS 선택자나 경로가 정확하지 않을 수 있습니다.
- 개발자 도구에서 HTML 구성요소(CSS 선택자)가 변화했는지 지속적으로 확인해야 합니다.
- 크롤링 목적의 웹 페이지가 변경되면서 HTML 구조가 달라질 수 있습니다. 따라서 처음 선택한 CSS 선택자나 경로가 정확하지 않을 수 있습니다.
데이터 로딩 순서:
- 지식인 서비스에서는 데이터를 비동기 requests 통해 가져오는 과정에서 각 부분의 로딩 타이밍이 달라질 수 있습니다. 따라서 크롤링 시의 순서와 브라우저에서의 시각적인 순서가 차이가 날 수 있습니다.
- 지식인 서비스에서는 데이터를 비동기 requests 통해 가져오는 과정에서 각 부분의 로딩 타이밍이 달라질 수 있습니다. 따라서 크롤링 시의 순서와 브라우저에서의 시각적인 순서가 차이가 날 수 있습니다.
해결 방법
- Selenium 적용: JavaScript로 로드된 데이터를 포함한 전체적인 페이지를 크롤링하고 싶을 때,
Selenium을 사용하는 것이 유용합니다.
- 정확한 선택자 확인: 개발자 도구 (F12)를 사용해 원하는 데이터가 있는 HTML 요소의 CSS 선택자를 정확히 확인하세요.
time.sleep()의 활용: 페이지가 완전히 로드되기 전 충분한 지연 시간을 주어 준다면 조금 더 일관된 데이터를 가져올 확률을 높일 수 있습니다.
아래의 질문을 통해 비슷한 주제에 대한 다른 해결 방법도 참고하실 수 있습니다:
- 뉴스 본문 크롤링: 동적 웹 페이지에서 데이터를 안전하게 크롤링하기.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
셀레니움 환경설정 오류
0
37
2
네이버 로그인 관련
0
212
2
안녕하세요 셀레니움에 대해서 질문
0
79
1
크롤링 연습사이트 문의
0
90
2
선택자 질문
0
67
2
'특정 요소가 나타날 때까지 스크롤' 부분 에러
0
74
2
자동 로그인 질문
0
81
2
44강 제목, 링크
0
94
1
원하는 값이 없을 때
0
86
2
크롤링한 링크가 엑셀로 들어가면 작동이 안되요
0
222
2
셀레니움 PDF자료는 받을 수 있나요
0
96
2
글목록 추출하기
0
93
2
메일 자동화 로그인 중복방지문자해결 오류 및 명시적 대기 질문
0
85
2
강의 노트가 어디에 있는건가요?
0
79
2
강의 커리큘럼 질문
0
92
1
조건문 else 사용하지 않는 이유
0
70
2
셀레니움으로 접근할 수 없는 경우
0
94
2
웹페이지 변경
0
67
2
자바스크립트로 태그 선택 시 질문입니다.
1
59
2
수료증은 어떻게 받나요?
0
114
2
class명을 활용하여 선택자를 만들지 않는 경우..?
0
54
2
드라이버가 안 열려요
0
74
2
이거 해결방법 아시는 분?
0
120
2
네이버 지식인 크롤링..
0
197
2

