• 목록
  • 아래로
  • 위로

Youtube Data API를 이용하여 특정 채널의 모든 비디오 링크를 얻는 함수입니다!

 

Youtube Data API v3, Python 3.X를 기준으로 설명드립니다.

 

아래에 나온 설명을 Python 3.X 용으로 살짝 수정하였습니다 ^^

 

max result limit의 제한을 받지 않기 위하여 nextPageToken을 활용하는 것이 핵심인 것 같네요 :)

 

https://stackoverflow.com/a/44871104

I want to get all video url´s of a specific channel. I think json with python or java would be a good...

 

 

import requests, json

def get_all_video(channel_id):
    api_key = 'API키를 입력하세요'
    base_video_url = 'https://www.youtube.com/watch?v='
    base_search_url = 'https://www.googleapis.com/youtube/v3/search?'
    start_url = base_search_url+'key={}&channelId={}&part=snippet,id&order=date&maxResults=25'.format(api_key, channel_id)
    video_links = []
    url = start_url
    while True:
        resp = requests.get(url).text
        data = json.loads(resp)
        for i in data['items']:
            if i['id']['kind'] == "youtube#video":
                video_links.append(base_video_url + i['id']['videoId'])
        try:
            next_page_token = data['nextPageToken']
            url = start_url + '&pageToken={}'.format(next_page_token)
        except:
            break
    return video_links

target_channel_id = '채널ID를 입력하세요'
get_all_video(target_channel_id)

 

 

아래에 제가 올린 소스와 함께 이용하면 유튜브 소개 커뮤니티(?) 목적으로 사용할 수 있겠네요 ^^

 

https://studyforus.com/share/701143

안녕하세요??   몇몇 개발자 커뮤니티에서 유튜브 영상을 리뷰 및 추천하는 사이트를 만들면 좋겠다는 글을 본 적이 있는데요 ^^   그런 사이트에서 활용할 수 있도록 유튜브...
이니스프리 | 2020.05.27

 

작성자
이니스프리 119 Lv. (0%) 1887110/115200000EXP

당분간 일신상의 사정으로 쪽지나 댓글로 답변을 드리기 어렵습니다. 죄송합니다.

 

CSVpuymXAAAVVpd.jpg

댓글 0

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 마스터 24.02.11.17:21 602
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 4283
520 개인용 vs 기업용 라이선스에 대해 11 이니스프리 이니스프리 20.05.05.12:18 5422
519 KT 인터넷 오피스 IP 서비스 - 홈 서버용 고정 IP 제공 9 file 이니스프리 이니스프리 18.03.20.22:04 4692
518 대학생이라면 PHPStorm 무료로 이용하세요 2 image Eagles Eagles 17.06.11.14:30 4684
517 [Python] 동영상 파일의 재생시간 길이를 구하기 (OpenCV vs MoviePy) 이니스프리 이니스프리 21.03.12.22:33 4629
516 [Selenium] alert 창을 닫는 방법 및 alert 창이 뜨는 것을 차단하는 방법 1 이니스프리 이니스프리 19.12.26.23:01 4573
515 [파이썬] .isalnum() - 정규표현식을 사용하지 않고 문자열 내 특수문자 사용 여부 확인 이니스프리 이니스프리 19.12.27.22:43 4439
514 Selenium에서 파일을 다운받을 폴더를 지정하기 이니스프리 이니스프리 19.11.18.22:15 4320
513 [끝말잇기] '슘'으로 시작하는 단어 이니스프리 이니스프리 19.08.20.01:10 4295
512 [CMD] 작업 스케줄러에서 Batch 파일을 최소화한 상태로 실행하기 1 이니스프리 이니스프리 20.05.13.23:15 4112
511 [Python] 특정 단어가 들어가는 폴더 또는 파일을 옮기기 이니스프리 이니스프리 20.11.01.14:14 3918
510 SKT 데이터 함께 쓰기, 회선수 제한, 직구폰 개통, 아이폰 직구시 주의사항 등 관련 팁 2 이니스프리 이니스프리 17.11.23.20:58 3880
509 작업 관리자의 CPU 이름 바꾸기 1 image 하루살이 title: 황금 서버 (30일)하루살이 17.09.03.11:33 3819
508 텔레그램 봇의 프로필 이미지를 변경하는 방법 이니스프리 이니스프리 19.11.28.16:33 3675
507 유튜브 단축키를 정리해봤습니다 (+이스터 에그) 2 이니스프리 이니스프리 18.09.26.23:34 3503
506 텔레그램(Telegram)의 보안 및 안전성에 대하여 (기술 내외적 요소를 고려) 이니스프리 이니스프리 18.11.21.21:35 3374
505 특정 파일을 제외한 현재 디렉토리 내의 모든 파일을 삭제하는 배치파일 이니스프리 이니스프리 18.10.12.17:11 3162
504 직구나 프로그램 다운로드시 사용 가능한 무료 해외 SMS 수신 사이트 8 이니스프리 이니스프리 17.12.09.14:50 3050
503 활성 네트워크 이름 바꾸기 1 image 하루살이 title: 황금 서버 (30일)하루살이 17.09.03.11:36 2884
502 파이썬에서 실행한 결과를 PHP에서 받는 방법 이니스프리 이니스프리 19.08.21.21:25 2880
501 파이썬에서 리스트의 문자열들이 특정 문자열 안에 포함되어 있는지 확인하는 방법 1 이니스프리 이니스프리 19.11.10.02:34 2878