Youtube의 코멘트를 얻는다 in Golang

6102 단어 5YouTubeapi
Golang에서 YouTube Data API를 사용하여 동영상 댓글을 받습니다.

Requirement


  • Golang 1.11
  • Youtube API Key
  • 취득 방법은 여기에서는 설명하지 않습니다


  • 준비


  • 라이브러리 설치
  • $ go get google.golang.org/api/googleapi/transport
    $ go get google.golang.org/api/youtube/v3
    

    절차



    1. 코드 다운로드


    $ git clone https://github.com/Doarakko/api-challenge
    $ cd api-challenge/youtube-data-api
    

    2. YouTube API Key 입력


    const developerKey = "your key"
    

    3. 댓글을 가져올 동영상의 ID 입력



    동영상 URL의 다음 위치는 videoId입니다.

    func main() {
        videoID := "input video id"
        getComments(videoID)
    }
    

    4. 실행


    $ go run youtube-comment.go
    "「今すぐにでも走って逃げたいのですが動けないんです」<br />私:音を立てちゃダメなのかな...?<br />「ゾウにくぎ付けです」<br />私:お前の勝手やんけ" by みちゃ
    いいね数: 1281 返信数: 15
    
    "確かにゾウの群れ見て感動してウシガエル食べたくなる時ありますよね" by れあるまどりーど
    いいね数: 1494 返信数: 87
    
    "「油断は禁物です」で草" by 42度.
    いいね数: 743 返信数: 5
    
    "象を見た感動とウシガエルを食べることが全く関係なくて草" by ステラ
    いいね数: 653 返信数: 14
    
    "感動してこけてカエル食べてフランスを皮肉る 色々詰め込みすぎてもうメチャクチャw" by A77V
    いいね数: 298 返信数: 0
    

    해설


    call := service.CommentThreads.List("id,snippet").
        VideoId(VideoID).
        Order("relevance").
        MaxResults(maxResults)
    
  • OrderOrderrelevance 를 지정하는 것으로, 굿수와 코멘트수가 많은 순서로 취해 이것입니다.
    디폴트는 time로 최근의 코멘트를 가져옵니다.
  • MaxResults가져올 주석의 최대 값을 설정합니다.
    기본값은 20개입니다.
  • SearchTermsSearchTerms("any word") 사용하여 지정된 문자가 포함된 주석만 가져옵니다.
  • call := service.CommentThreads.List("id,snippet").
        VideoId(VideoID).
        SearchTerms("草").
        Order("relevance").
        MaxResults(maxResults)
    
    $ go run youtube-comment.go
    "<a href="https://www.youtube.com/watch?v=Qs3sShlgKGk&amp;t=3m19s">3:19</a>草" by 涼宮ハルヒ
    いいね数: 1 返信数: 0
    
    "叩いて滑るのは草" by ダレノガレ明美「公式」
    いいね数: 0 返信数: 0
    
    "いっつも嫌な顔してて草" by Car Mix
    いいね数: 11 返信数: 0
    
    "カエル捕まえるの上手すぎて草" by トニーバーネット
    いいね数: 0 返信数: 0
    
    "<a href="https://www.youtube.com/watch?v=Qs3sShlgKGk&amp;t=4m00s">4:00</a> ここ草" by ビーストシニア
    いいね数: 0 返信数: 0
    
  • 값을 지정하는 방법
  • authorName := item.Snippet.TopLevelComment.Snippet.AuthorDisplayName
    text := item.Snippet.TopLevelComment.Snippet.TextDisplay
    likeCnt := item.Snippet.TopLevelComment.Snippet.LikeCount
    replyCnt := item.Snippet.TotalReplyCount
    

    공식 문서 에 응답의 포맷이 실려 있으므로, 거기에 맞추어 지정하면 간단합니다.

    에디터의 보완 기능도 👍

    Reference


  • YouTube Data API 문서
  • YouTube Data API 공식 샘플(Golang)
  • Youtube의 코멘트 얻기 in Python
  • 좋은 웹페이지 즐겨찾기