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

Bear Pooh님의 프로필 이미지
Bear Pooh

작성한 질문수

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

N번째 태그만 선택하기

안녕하세요. G마켓에서 해당태그를 찾는데 너무 어렵습니다.

작성

·

180

1

교육받은데로 스마트스토어에서는 잘 찾는데

G마켓에서는 구조가 달라서 찾기가 어렵습니다.

제거 어떤걸 빼먹었는지 몰라서 계속 해봐도 안되서 결국 여기에 질문을 올리게 되었습니다.

제가 찾는거는 제품리스트에서 <구매 1>이 찍힌것만 필터링해서 리스트로 뽑아내려고 하고 있습니다.

해당 주소는 아래와 같습니다.

https://browse.gmarket.co.kr/search?keyword=%ec%95%8c%ea%b5%ac%ec%8a%ac&f=is:cb

구조는 아래와 같습니다.

 

<div class="box__information-score">

<ul class="list__score">

<li class="list-item list-item__pay-count"><span class="text">구매 

<!-- -->

1</span><span class="for-a11y">건</span></li>

</ul>

</div>

item_containers = soup.select(".box__item-container")
for item_container in item_containers :
    # item_score = item_container.select('.list-item__pay-count')
    # print(item_score)
    if item_container == '.list-item__pay-count' :
        print('test')

어려운점은 list-item__pay-count까지 확인이 되는데 if in으로 검색해서 해당 링크만 추출하려는데 나오질 않더라구요.

 

제발 가르쳐주세요!!

 

답변 1

0

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

구매1 을 select로 가져오면 

있으면 리스트에 1개, 없으면 리스트에 0개가 담기겠죠?

 

item_score = item_containers.select(".list-item__pay-count")

if len(item_score) > 0:

    # 여기서 링크를 추출하면 됩니다.

    link = item_containers.select_one("a.link__item").attrs['href']

    print(link)

 

이렇게 하면 될 것 같은데요?

 

Bear Pooh님의 프로필 이미지
Bear Pooh

작성한 질문수

질문하기