【问题标题】:YouTube Data API v3: invalid search filters and/or restrictions for certain Freebase topicsYouTube Data API v3:某些 Freebase 主题的无效搜索过滤器和/或限制
【发布时间】:2013-06-27 14:07:39
【问题描述】:

我正在尝试使用 YouTube Data API v3 进行 YouTube 主题搜索。我发现有许多看似流行的 Freebase 主题,即使 safeSearch 参数设置为“none”,YouTube 也没有返回任何结果。例如,当我尝试在 YouTube 上搜索主题“酒精饮料”(/m/012mj) 时,API 会引发异常。

from apiclient.discovery import build
from apiclient.errors import HttpError

DEVELOPER_KEY = "blah blah"
YOUTUBE_API_SERVICE_NAME = "youtube"
YOUTUBE_API_VERSION = "v3"

youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION,
  developerKey=DEVELOPER_KEY)
topic_id = "/m/012mj"
try:
  search_response = youtube.search().list(
    topicId=topic_id,
    type="video",
    part="id",
    safeSearch="none",
    q="",
  ).execute()
except HttpError,e:
  print e

<HttpError 400 when requesting https://www.googleapis.com/youtube/v3/search?topicId=%2Fm%2F012mj&q=&safeSearch=none&part=id&key=AIzaSyC7MDamoleicn233r8mTyK2sohcV4A3Aq8&alt=&type=video returned "Invalid combination of search filters and/or restrictions.">

有什么建议吗?

更新

这不再返回 400 错误。 API 现在返回没有项目的搜索响应。至少这有助于我区分错误和没有结果的搜索响应。但是,即使将 safeSearch 设置为“none”,YouTube 也不会返回该主题的搜索结果似乎仍然很奇怪。

【问题讨论】:

    标签: youtube youtube-api freebase


    【解决方案1】:

    您是否考虑过设置 max-results 参数?我对 Freebase api 的 YouTube 风格没有经验,但有 read 他们建议将视频的结果限制为 10,而不是接受默认值 25。否则很奇怪他们会发送 400(错误请求)而不是 401 左右。

    【讨论】:

    • 感谢您的建议。试过了,但没有运气。
    • 我也有同样的问题,我正在尝试使用 videoEmbeddable...你找到解决方法了吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-21
    • 1970-01-01
    • 2015-11-09
    • 2013-12-26
    • 1970-01-01
    • 2020-01-21
    • 1970-01-01
    相关资源
    最近更新 更多