• 목록
  • 아래로
  • 위로

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%) 1890450/115200000EXP

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

 

CSVpuymXAAAVVpd.jpg

댓글 0

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 마스터 24.02.11.17:21 641
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 4319
542 [Python] 소수점 자리수의 출력 - round() vs format() 1 이니스프리 이니스프리 20.02.15.11:53 31755
541 [Python] 파일을 읽어서 각 행을 리스트로 만드는 5가지 방법 이니스프리 이니스프리 18.11.25.22:16 23288
540 안티앨리어싱 옵션: 알고 쓰자. 5 image 하루살이 title: 황금 서버 (30일)하루살이 17.02.25.23:57 19428
539 GIF 파일의 용량을 줄여주는 사이트 - gifgifs.com image 이니스프리 이니스프리 17.10.09.12:57 17666
538 [Python] tqdm과 enumerate를 함께 사용하기 이니스프리 이니스프리 20.05.29.19:07 16453
537 [OpenCV] !_src.empty() in function 'cvtColor' 에러 해결방법 2 이니스프리 이니스프리 19.11.15.20:40 12736
536 윈도우 작업 스케줄러에서 특정 작업이 실행 안 되는 경우 해결방법 (배치파일 등의 상대경로 관련) 2 image 이니스프리 이니스프리 18.10.02.19:38 12352
535 [파이썬] Selenium에서 클릭이 안 될 때의 해결방법 이니스프리 이니스프리 19.10.27.22:20 10370
534 [Python] Requests에서 JSON 데이터를 POST 전송하는 방법 x2 이니스프리 이니스프리 21.08.22.08:16 9561
533 [Selenium] select box, check box, radio button 조작하기 이니스프리 이니스프리 20.06.27.15:47 8441
532 유튜브 iframe api의 autoplay 옵션과 관련하여 1 image 이니스프리 이니스프리 19.01.05.14:45 7530
531 윈도우 MAK 라이센스의 인증 가능횟수 확인방법 4 이니스프리 이니스프리 18.11.21.23:53 7511
530 일본 아마존에서 MP3 음원 구입하는 방법 5 image 제르엘 제르엘 19.12.23.01:28 7365
529 DB 설계하실 때 사용하면 좋을거 같은 사이트 공유합니다. 1 image JAVA JAVA 17.11.21.15:06 6990
528 국전 '빨간집' 위치 및 영업시간 등 정보 3 이니스프리 이니스프리 18.11.30.16:17 6740
527 제조사별 서버 원격관리 툴의 명칭 정리 (iLO, iDRAC, IPMI 등) 이니스프리 이니스프리 18.11.22.22:10 6458
526 해외직구시 카드 중복결제에 대하여 (아마존 등) 9 이니스프리 이니스프리 18.12.30.15:52 6106
525 텔레그램 비밀대화의 스크린캡쳐 방지기능 이니스프리 이니스프리 20.01.20.23:44 5871
524 크롬 원격 데스크톱 조작법 2 이니스프리 이니스프리 20.06.03.23:03 5822
523 윈도우의 CMD 창에서 Ctrl+V로 붙여넣기 (윈도우 10 / 윈도우 8 이하) 3 image 이니스프리 이니스프리 18.11.08.00:15 5756