네이버 사이트 크롤링 (연습) 오류
2164
작성한 질문수 16
안녕하세요...
뻔한 낮은 수준질문일 수 있지만 기 질의응답 내용을 보고도 제 문제와 연결지어 생각이 잘 안되서요...
네이버 GNB 메뉴 리스트를 크롤링해보고 싶었습니다.
■개발자모드에서 (노랑 바탕칠 부분)이 해당 영역을 뜻하는것을 확인하고
■아래와 같이 작성해보았는데
import requests
from bs4 import BeautifulSoup
res = requests.get('https://www.naver.com/')
soup = BeautifulSoup(res.content,'html.parser')
titles = soup.find('div', id='gnb')
for title in titles:
print(title.get_text())
■ 이런 오류문구가 뜨는데... GNB 영영을 텍스트로 가져올수 없다 라고 하는거같은데
왜 어떤 차이점 떄문에 못가져오는지 궁금합니다..
--------------------------------------------------------------------------- AttributeError Traceback (most recent call last) <ipython-input-24-15ace1329085> in <module> 7 titles = soup.find('div', id='gnb') 8 for title in titles: ----> 9 print(title.get_text()) ~\anaconda3\lib\site-packages\bs4\element.py in __getattr__(self, attr) 869 raise AttributeError( 870 "'%s' object has no attribute '%s'" % ( --> 871 self.__class__.__name__, attr)) 872 873 def output_ready(self, formatter="minimal"): AttributeError: 'NavigableString' object has no attribute 'get_text'
답변 부탁드려요
감사합니다.
답변 1
0
보통 이런 경우는 해당 태그를 가져오지 못했을 때입니다.
그래서 title 이 None 이되고, 그러다보니 거기에서 get_text() 를 했을 때, 해당 함수(메서드)가 없어서 에러를 내는 것이예요.
제가 각자 원하시는 크롤링 코드를 직접 작성하면서, 테스트를 해볼 수는 없지만, 대략적으로 해당 태그가 동적으로 생성이 된다든지 할 때, 크롬 개발자 모드에서는 분명 나타나지만, 크롤링이 안될 수 있습니다. 크롬 개발자 모드보다, 해당 웹페이지에서 오른쪽 클릭해서, 소스보기 한 다음에, 해당 소스에서 해당 태그가 보이는지 확인해보시면 아실 수 있으실 것 같아요.
동적 페이지의 경우에는 selenium 이라는 별도 크롤링 기술로 크롤링을 해야 하는데 난이도가 조금 있어요. 그래서 이 부분은 별도 강의인 '현존 최강 크롤링 기술: selenium/scrapy 기술' 강의로 본 강의를 어느정도 소화하신 분들에 한해서 제공하고 있습니다. 단계가 있어서요. 이 부분도 참고해보시면 좋을 것 같습니다.
감사합니다.
크롤링, 영상을 따라해도 제미나에게 물어봐도 안되요
0
33
1
정규표현식 및 여러 코드 꼭 외워야 하나요?
0
39
1
리스트 함수형도 정수 데이터 받을 수 있나요?
0
45
1
크롤링 관련 질문
0
63
1
문제 답이 없는 버전은 없나요?
0
74
1
requests, BeautifulSoup 임포트 부분에 대해 문의드립니다.
0
83
1
업데이트 강의
0
97
2
선생님 강의중에서 sqlite3 강의를 제공한 강의가 있나요?
0
123
2
연습용 예제 파일
0
76
1
lxml 관련 오류
0
106
1
SAVE Request 창 띄우는 법
0
92
1
포스트맨 사용법이 바뀌어서 강의를 따라가지 못하겠습니다. 2
0
75
1
포스트맨 사용법이 바뀌어서 강의를 따라가지 못하겠습니다.
0
96
1
예제 2, 4, 6에 대한 풀이 방식 질문.
0
89
1
문제 파일
0
78
1
pdf 파일 내 코드 복붙시 공백
0
291
1
데이터 저장 강좌 문의 건
0
95
1
" " 와 ' '의 차이를 알고 싶습니다
0
243
1
Exercise 22. 문자열 다루기 (strip)
0
132
1
list함수로 리스트 선언하면 실패하는데 이유는 무엇입니까?
0
187
1
셀 삽입후 바로 기입이 가능합니까?
0
139
2
주피터 노트북 마우스 스크롤? 오류
0
1550
2
등호 2개('==')의 의미가 뭐죠?
0
460
2
페이지가 넘어갈 때 url 변하지 않는 경우
0
266
1





