강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

여니님의 프로필 이미지
여니

작성한 질문수

[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)

1단계 - class 선택자 고급 테크닉, 특수문자 처리 방법

class명을 활용하여 선택자를 만들지 않는 경우..?

작성

·

18

0

안녕하세요,

class 안에 띄어쓰기 및 특수문자가 있는 경우 선택자를 만드는 방안에 대하여 설명해주셨는데요,

사진과 같이 dt > a를 활용하여서도 제목과 링크주소를 뽑아낼 수 있는 것으로 확인하여서요!

혹시 꼭 class명을 활용하여 선택자를 만들어야 하나요? dt >a 로도 원하는 내용을 추출할 수 있다면 사진과 같은 방향으로 해도 크롤링 진행에 문제가 없는지 궁금합니다.

image.png


 

답변 2

0

스타트코딩님의 프로필 이미지
스타트코딩
지식공유자

AI 인턴이 얘기 해준 것 처럼
CSS 선택자에는 정답이 하나만 있는게 아닙니다 ㅎㅎ
여러가지 방법으로 만들수가 있어요!

 

클래스 선택자를 사용하든, 자식 선택자를 사용하든

태그만 잘 찾아오면 됩니다 ^^

0

안녕하세요, 인프런 AI 인턴입니다. 여니님.

질문주신 내용에 대해 답변드리겠습니다.

크롤링을 할 때, CSS 선택자의 사용은 매우 유연한 방법을 제공합니다. 선택자를 통해 요소를 선택할 때, 반드시 클래스명을 사용할 필요는 없으며, 다른 방법으로도 원하는 요소를 선택할 수 있습니다. 예를 들어, dt > a와 같은 구조적 선택자는 문서의 구조에 기초하여 선택을 진행하기 때문에 특정 클래스명을 알지 못하더라도 접근할 수 있습니다. 이는 클래스명이 동적으로 변하거나 명확하지 않을 때 유용하게 사용될 수 있습니다. 따라서, 이런 방향으로 크롤링을 진행하셔도 문제가 없습니다.

다만, 구조가 바뀌지 않는다는 전제 하에 dt > a 형태로 선택자가 작동하는 것이며, 웹 페이지의 구조가 변경되면 이 방법이 더 이상 유효하지 않을 수 있습니다. 이러한 상황을 피하려면, 상대적으로 안정적인 선택자를 사용하는 것이 좋습니다.

관련하여 참고하실 수 있는 유사한 질문이 있어 링크를 드립니다:
- select() class명 질문입니다.

이 질문에서 사용자는 정확하게 클래스명이 작동하지 않는 문제를 겪고 있었고, 이를 해결하기 위해 어떻게 선택자를 사용해야 하는지에 대한 답변이 제공되었습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

여니님의 프로필 이미지
여니

작성한 질문수

질문하기