• 목록
  • 아래로
  • 위로

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. (3%) 4887230/115200000EXP

Make StudyForUs Great Again!

 

CSVpuymXAAAVVpd.jpg

댓글 0

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [중요공지] 추석 맞이 서버 업데이트 안내 5 마스터 마스터 25.10.09.02:20 78513
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 7 마스터 마스터 23.01.14.02:23 371952
552 일부 GIF 파일을 ImageMagick으로 처리 시 이미지가 깨지는 경우 해결법 image 제르엘 제르엘 25.05.18.02:25 1474
551 [Python] installing Geopandas in Windows (Trouble shooting) 1 이니스프리 이니스프리 24.10.25.20:10 1495
550 [Nextcloud] 프로세스가 kill 되는 문제에 관한 Troubleshooting 3 이니스프리 이니스프리 24.09.30.19:53 1794
549 [펌] Contabo VPS 관련 최근 정보글 image 이니스프리 이니스프리 24.09.29.21:11 1045
548 [Python] PDF 파일을 특정 페이지를 기준으로 두 개로 나누기 이니스프리 이니스프리 24.08.11.20:27 1676
547 [Python] Youtube API를 사용하지 않고 특정 채널의 모든 비디오 URL을 가져오기 이니스프리 이니스프리 24.06.09.22:12 1411
546 HDMI 단자의 QHD 출력을 정식으로 지원하지 않는 NVIDIA 그래픽 카드로 QHD 60 Hz 해상도 출력하기 2 image 제르엘 제르엘 24.06.09.17:45 2277
545 [Python] cannot import name 'TypeAliasType' from 'typing_extensions' 에러 대응방법 이니스프리 이니스프리 24.06.01.23:54 1146
544 [VSCode] 1개의 OS에 VSCode 여러 개를 설치 및 구동하기 이니스프리 이니스프리 24.05.26.05:09 1149
543 [Python] 리스트에 중복된 원소가 있는지 확인하는 함수 이니스프리 이니스프리 24.05.22.20:21 1286
542 [Python] random 함수가 계속하여 동일한 결과를 출력할 때 해결방법 이니스프리 이니스프리 24.05.15.19:32 1552
541 트래픽 절감 관련 모 커뮤니티 사이트의 회의 결과 이니스프리 이니스프리 24.05.15.16:51 1387
540 [Python] SSL: CERTIFICATE_VERIFY_FAILED에 대한 대처 방법 (2) 이니스프리 이니스프리 24.05.05.21:04 1339
539 [KT] 오피스넷 가정 설치 관련 이니스프리 이니스프리 24.05.05.00:28 1250
538 [Python] 쿠팡 크롤링할 때 소소한 팁 이니스프리 이니스프리 24.05.02.21:50 1182
537 [Python] dictionary 2개의 평균을 구하여 내림차순 정렬하기 이니스프리 이니스프리 24.04.21.17:29 1105
536 [Python] 독일어, 스페인어, 체코어 등 철자를 영문 알파벳으로 전환하기 이니스프리 이니스프리 24.04.21.17:15 1052
535 [Python] Tabulate 모듈로 작성한 테이블을 파일로 저장할 때 에러가 발생하는 경우 이니스프리 이니스프리 24.04.20.23:45 937
534 [Python] 변수의 이름을 반환하는 함수 이니스프리 이니스프리 24.04.20.23:29 1167
533 [Python] Table을 쉽게 만들어주는 모듈x2 이니스프리 이니스프리 24.04.18.22:04 827