Tôi đang sử dụng Youtube V3 Api và đây là đoạn mã để kéo mười video hàng đầu từ kênh youtube của tôi. (Truy vấn này cùng hoạt động hoàn hảo trong API explorer google @https://developers.google.com/apis-explorer/)Lỗi API Youtube v3 - 'Không có bộ lọc nào được chọn'
url_start = "https://www.googleapis.com/youtube/v3/videos?" + \
"order=viewCount&part=snippet&forMine=true" + \
"&type=video&maxResults=10&key=MY_API_KEY"
data = requests.get(url_start).json()
Nhưng tôi nhận được lỗi này:
{u'error': {u'code': 400,
u'message': u'No filter selected.',
u'errors':[{u'locationType': u'parameter',
u'domain': u'youtube.parameter',
u'message': u'No filter selected.',
u'reason': u'missingRequiredParameter',
u'location': u''}]}}
tôi biết chìa khóa có giá trị bởi vì nếu tôi có thể làm cùng một truy vấn mà không forMine
https://www.googleapis.com/youtube/v3/search?part=snippet&key=MY_API_KEY
Và tôi nhận được các video hàng đầu nói chung từ youtube. Có cách nào tốt hơn để thực hiện việc này hay cách giải quyết khác không?
mục tiêu là thứ hai, chỉ cần lấy mười từ kênh của tôi bất kỳ lúc nào với python - Tôi không nhận ra bạn cần nhận mã thông báo làm mới ngay để thực hiện các truy vấn cụ thể. Điều này hữu ích –
Lưu ý Tôi đã chỉnh sửa câu trả lời của mình để xây dựng một chút ... bạn có thể làm điều đó mà không cần bất kỳ mã thông báo nào NẾU bạn đã biết ID kênh của người dùng đã cho. Nếu không, bạn sẽ phải sử dụng oAuth. – jlmcdonald
cảm ơn @jlmcdonald đã hoạt động! Tôi cũng đã có ID kênh sai - nhưng nó hoạt động độc đáo mà không cần phải nhận và duy trì mã thông báo cho dữ liệu đơn giản! –