के बाद निम्नलिखित को प्राप्त होता है आप Python YouTube API प्रयोग करने के लिए क्या पूछा:
from gdata.youtube import service
USERNAME = '[email protected]'
PASSWORD = 'a_very_long_password'
VIDEO_ID = 'wf_IIbT8HGk'
def comments_generator(client, video_id):
comment_feed = client.GetYouTubeVideoCommentFeed(video_id=video_id)
while comment_feed is not None:
for comment in comment_feed.entry:
yield comment
next_link = comment_feed.GetNextLink()
if next_link is None:
comment_feed = None
else:
comment_feed = client.GetYouTubeVideoCommentFeed(next_link.href)
client = service.YouTubeService()
client.ClientLogin(USERNAME, PASSWORD)
for comment in comments_generator(client, VIDEO_ID):
author_name = comment.author[0].name.text
text = comment.content.text
print("{}: {}".format(author_name, text))
दुर्भाग्य एपीआई प्रविष्टियों की संख्या कि को पुनः प्राप्त किया जा सकता है की सीमा।
gdata.service.RequestError: {'status': 400, 'body': 'You cannot request beyond item 1000.', 'reason': 'Bad Request'}
ध्यान दें कि इसी सिद्धांत एपीआई के अन्य फीड में प्रविष्टियों को पुनः प्राप्त करने के लिए आवेदन करना चाहिए: यह त्रुटि मुझे मिल गया जब मैं एक हाथ से एक ट्वीक संस्करण की कोशिश की गढ़ी GetYouTubeVideoCommentFeed
URL पैरामीटर था।
आप GetYouTubeVideoCommentFeed
URL पैरामीटर शिल्प हाथ चाहते हैं, इसके प्रारूप है:
'https://gdata.youtube.com/feeds/api/videos/{video_id}/comments?start-index={start_index}&max-results={max_results}'
निम्नलिखित प्रतिबंध लागू होते हैं: start-index <= 1000
और max-results <= 50
।
स्रोत
2012-10-10 20:38:16
यह उत्तर दिया गया था [यहां] (http://stackoverflow.com/questions/10941803/using-youtube-api-to-get-all-comments-from-a-video-with-the-json-feed) PHP का उपयोग करने के समाधान के साथ, चूंकि YouTube PHP API में एक कॉल है जो इसे अनुमति देता है। मुझे नहीं लगता कि एक शुद्ध पायथन जवाब बाहर है। –
@ केएनबी मैंने इसे भी देखा। कि एक शर्म की बात है। प्रश्न में वीडियो में 9 के टिप्पणियां हैं और मुझे नहीं लगता कि 360 'GetNextLink' कॉल करना सबसे अच्छा तरीका है। – TankorSmash
यूआरएल 'www.youtube.com/all_comments? V = video_id' में एक पारदर्शी टिप्पणी सूची है, लेकिन यह एक लंबा लोड समय है। मान लीजिए कि मैं कोशिश कर सकता हूं। – TankorSmash