728x90
반응형
지난 포스팅에 이어 광희가 진행하고 있는 Youtube 네고왕 첫 번째 에피소드 영상에 달린 댓글을 가져오도록 하겠다. 아래 포스팅에서 네고왕 영상에 부여된 ID값을 다 갖고 왔기 때문에 바로 추출할 수 있다.
2020/11/14 - [문송충의 코딩하기/파이썬 데이터 분석] - [파이썬] - 유튜브 API를 활용해서 네고왕 조회, 좋아요, 댓글 수 가져오기
Python Code
코드가 조금 복잡하다. 댓글을 한번에 100개 밖에 출력하지 못하기 때문에 여기서 제공하고 있는 'nextpageToken" 파라미터를 반복문으로 돌려야만 데이터를 최대 많이 가져올 수 있다.
from googleapiclient.discovery import build
from googleapiclient.errors import HttpError
from oauth2client.tools import argparser
DEVELOPER_KEY = "~" #유튜브 API 키 값
YOUTUBE_API_SERVICE_NAME = "youtube"
YOUTUBE_API_VERSION = "v3"
youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION,developerKey=DEVELOPER_KEY)
reviews=[]
cm=youtube.commentThreads().list(
videoId = "IbLOGQy_ioM",
order = "relevance",
part = "snippet",
maxResults = 100
).execute()
for i in cm['items']:
reviews.append(i['snippet']['topLevelComment']['snippet']['textOriginal'])
npt=cm['nextPageToken']
while 'nextPageToken' in cm.keys():
cm=youtube.commentThreads().list(
videoId = "IbLOGQy_ioM",
order = "relevance",
part = "snippet",
maxResults = 100,
pageToken=npt
).execute()
for i in cm['items']:
reviews.append(i['snippet']['topLevelComment']['snippet']['textOriginal'])
if 'nextPageToken' in cm.keys():
npt=cm['nextPageToken']
else:
break
adf=pd.DataFrame(reviews,columns=['Comments'])
위 코드를 통해서 코멘트를 추출하면 약 1500 여 개의 데이터가 있음을 확인할 수 있다. 다만 유튜브에는 2200여 개의 코멘트가 있어 두 데이터 간 차이가 있다. 이 오류?를 해결하려고 했는데 잘 안돼서 좀 더 살펴보도록 하겠다. 우선 여기서는 코드를 뽑을 수 있는 댓글 수만 가져와 봤다.
다음 포스팅에서는 이번에 뽑은 데이터를 갖고 텍스트 분석을 한번 더 진행해 보겠다.
728x90
반응형
'문송충의 코딩하기 > 파이썬 데이터 분석' 카테고리의 다른 글
[파이썬] - Pykrx 패키지를 활용한 KOSPI, KOSDAQ 종목별 공매도 잔고 Top 10 기업 추출 (0) | 2020.11.23 |
---|---|
[파이썬] - Folium 활용하여 서울시 구 기준 인구수 시각화 하기 (1) | 2020.11.22 |
[파이썬] - 유튜브 API를 활용해서 네고왕 조회, 좋아요, 댓글 수 가져오기 (1) | 2020.11.14 |
[파이썬] - 서울시 열린데이터광장 오픈 API 활용해서 서울시 공영주차장 정보를 알아보자 (0) | 2020.11.08 |
[파이썬] - 아마존에서 작성된 삼성 QLED TV 고객 리뷰 분석하기 (1) | 2020.11.07 |
댓글