• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Python, SQL 게시판 크롤링 질문입니다

크롤링 질문입니다

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #35077

    이민혁
    참가자

    안녕하세요! 선생님 강의 들으면서 재밌게 열공 중입니다

    먼저 질문드리고 싶은 건 제가 구글에서 크롤링을 하려고 하는데 자꾸 오류가 떠서 질문드립니다.

    제가 원한 건 구글에서 미숫가루 칼로리를 검색했을 때 뜨는 사이트의 제목입니다.

    import requests
    from bs4 import BeautifulSoup

    data = requests.get('https://www.google.com/search?q=%EB%AF%B8%EC%88%AB%EA%B0%80%EB%A3%A8+%EC%B9%BC%EB%A1%9C%EB%A6%AC&sxsrf=ALiCzsYyN2Bh3GpQ4qu0UR1qDJKIvmRvzA%3A1653700743401&ei=h3iRYrmQGKyAr7wPzMWH-Ag&ved=0ahUKEwj57_-qg4H4AhUswIsBHcziAY8Q4dUDCA4&uact=5&oq=%EB%AF%B8%EC%88%AB%EA%B0%80%EB%A3%A8+%EC%B9%BC%EB%A1%9C%EB%A6%AC&gs_lcp=Cgdnd3Mtd2l6EAMyBQgAEIAEMgUIABCABDIECAAQHjIGCAAQHhAPMgYIABAeEAUyBggAEB4QBTIGCAAQHhAFMgYIABAeEAUyBggAEB4QBTIGCAAQHhAFOgcIIxCwAxAnOgcIABBHELADOgQIIxAnOgYIABAeEAg6CAgAEB4QDxAISgQIQRgASgQIRhgAUPkDWJIOYLIPaAJwAXgBgAGDAYgBjgeSAQMwLjiYAQCgAQHIAQrAAQE&sclient=gws-wiz')
    soup = BeautifulSoup(data.text.replace('\\', ''), 'html.parser')

    파일 = soup.select('h3.LC20lb')
    print(파일[0].text)

     

    이렇게 출력을 하면 IndexError: list index out of range 가 떠서 

    print(파일) 이렇게 출력을 해보니 그냥 [] 이렇게만 출력이 됩니다.

    그래서 print(파일.text) 로도 출력을 해보았습니다.

    ResultSet object has no attribute 'text'. You're probably treating a list of elements like a single element. Did you call find_all() when you meant to call find()?

    이렇게 오류가 뜨더라구요. 제가 복수의 성질을 가진 것을 싱글 요소처럼 다뤘다는데 이게 무슨 말일까요? 제가 select 함수를 잘못 사용한 것인가요?!

    구글링을 열심히 해보았지만 그래도 이해가 잘 가지않아 질문드립니다. 감사합니다. 좋은 하루 보내세요:)

    #35091

    codingapple
    키 마스터

    자바스크립트를 이용해서 html을 나중에 생성하는 사이트라 그런가봅니다

    그런사이트는 requests 만으로 수집불가능합니다  

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관, 개인정보처리방침
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠