希望从给定的视频中获取所有评论,而不是一次浏览一页。
from gdata import youtube as yt
from gdata.youtube import service as yts
client = yts.YouTubeService()
client.ClientLogin(username, pwd) #the pwd might need to be application specific fyi
comments = client.GetYouTubeVideoComments(video_id='the_id')
a_comment = comments.entry[0]
上面的代码允许您抓取一个注释,可能是最近的注释,但是我正在寻找一种方法来同时抓取所有的注释。对于Python的gdata
模块,这可能吗?
目前我只有一个解决方案,但它没有使用API,而且当有几千条评论时会变慢。
请注意,由于“class”是内置的python名称,因此无法通过regex或lambdas对“startwith”进行常规搜索,如here所示,因为您使用的是dict,而不是常规参数。由于BeautifulSoup,它也变得相当慢,但它需要使用,因为
etree
和minidom
由于某种原因找不到匹配的标记。即使在prettyfying()
和bs4
之后以下是您使用Python YouTube API所要求的:
不幸的是,API将可检索的条目数限制为1000。这是我尝试使用手工制作的
GetYouTubeVideoCommentFeed
URL参数调整版本时遇到的错误:注意,同样的原则应该适用于检索API的其他提要中的条目。
如果要手工创建
GetYouTubeVideoCommentFeed
URL参数,其格式为:以下限制适用:
start-index <= 1000
和max-results <= 50
。相关问题 更多 >
编程相关推荐