• 목록
  • 아래로
  • 위로

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. (2%) 3648490/115200000EXP

Make StudyForUs Great Again!

 

CSVpuymXAAAVVpd.jpg

댓글 0

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 시스템 점검 작업 완료 안내 10 마스터 마스터 24.09.05.16:25 1038
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 7776
497 HDMI 단자의 QHD 출력을 정식으로 지원하지 않는 NVIDIA 그래픽 카드로 QHD 60 Hz 해상도 출력하기 2 image 제르엘 제르엘 24.06.09.17:45 166
496 [PHP] 파일을 읽어서 각 행을 리스트로 만들기 이니스프리 이니스프리 19.07.10.20:29 167
495 [Python] 최적화된 윈도우용 Tensorflow가 있는 Github repository 이니스프리 이니스프리 20.05.20.18:47 167
494 [Python] Youtube Playlist에 담긴 동영상들을 역순으로 불러오기 이니스프리 이니스프리 21.03.19.00:41 169
493 [학술정보] Breaking character and natural image based CAPTCHA using feature classification 1 이니스프리 이니스프리 18.11.13.16:01 170
492 TCP BBR을 사용하여 기존 TCP 구현보다도 훨씬 빠른 속도를 즐기는 방법 2 image Seia Seia 20.01.19.07:01 171
491 [Python] Tabulate 모듈로 작성한 테이블을 파일로 저장할 때 에러가 발생하는 경우 이니스프리 이니스프리 24.04.20.23:45 172
490 [Python] Youtube_dl 사용시 주의할 점 이니스프리 이니스프리 21.03.12.22:14 176
489 [스퀘어넷] Ubuntu Server 18.04 LTS 지원 1 이니스프리 이니스프리 19.02.04.22:20 177
488 앱체크 라이선스 갱신과 관련하여 이니스프리 이니스프리 19.05.11.14:43 177
487 [Python] PDF 파일을 특정 페이지를 기준으로 두 개로 나누기 이니스프리 이니스프리 24.08.11.20:27 178
486 AMD KOREA 라이젠 3500X 공식 런칭 예정 image 이니스프리 이니스프리 19.10.15.17:50 180
485 [팁] 모바일 앱 빌더 해피보이 20.04.02.08:59 180
484 마지막 방문일자 알려주기 슬기 슬기 18.10.11.00:31 181
483 [Vultr] Important Tax Notice 이니스프리 이니스프리 19.11.20.07:38 181
482 최근 KT 해외망 간단 리뷰 이니스프리 이니스프리 19.12.25.23:21 181
481 [펌] 하이패스 미납요금 내기 귀찮을 땐, 동네 편의점? image 이니스프리 이니스프리 19.08.28.14:53 182
480 [Python] OrderedDict에 대한 간단한 소개 3 이니스프리 이니스프리 20.06.16.13:09 182
479 [파이썬] OS에 따른 파일경로 표기방법의 차이와 관련하여 이니스프리 이니스프리 19.07.08.20:27 183
478 [펌] 하나의 키 입력으로 유튜브 광고 차단하기 - Block YouTube Ads With a Single Keystroke 2 이니스프리 이니스프리 20.06.14.10:19 183