【问题标题】:How can I apply Boolean AND operator in YouTube API v3 search operation?如何在 YouTube API v3 搜索操作中应用布尔 AND 运算符?
【发布时间】:2017-10-26 10:32:50
【问题描述】:

我想对搜索查询应用布尔 AND 运算。 示例:q=印度和食品

官方文档只提到了 OR 和 NOT 运算符。

q 参数指定要搜索的查询词。 您的请求还可以使用布尔 NOT (-) 和 OR (|) 运算符来排除视频或查找与多个搜索词之一相关联的视频。例如,要搜索匹配“boating”或“sailing”的视频,请将 q 参数值设置为boating|sailing。同样,要搜索匹配“boating”或“sailing”但不匹配“fishing”的视频,请将 q 参数值设置为boating|sailing -fishing。请注意,管道字符在您的 API 请求中发送时必须进行 URL 转义。管道字符的 URL 转义值为 %7C。

是否有任何提示或解决方法可以应用 AND?

谢谢。

【问题讨论】:

  • 大胆猜测一下,如果可行,您可能需要发送错误报告。
  • @DaImTo “猜猜试试??”。我不明白你想说什么。请详细说明。

标签: youtube youtube-api youtube-data-api


【解决方案1】:

在 Youtube 搜索中,逗号 (,) 似乎是 and

GET https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=25&q=surfing%2Ccat&key={YOUR_API_KEY}

我使用query explorer 对此进行了测试我已将此作为文档中的错误报告。

  {
   "kind": "youtube#searchResult",
   "etag": "\"cbz3lIQ2N25AfwNr-BdxUVxJ_QY/yGHykgbj2os5tUgCZrcquXy09YM\"",
   "id": {
    "kind": "youtube#video",
    "videoId": "XNR_wrAaoqA"
   },
   "snippet": {
    "publishedAt": "2016-03-10T14:00:01.000Z",
    "channelId": "UCqhnX4jA0A5paNd1v-zEysw",
    "title": "GoPro: Didga the Dog-Surfing Cat",
    "description": "Didga takes it from the park to the pool to cool off with his canine companion, Ice, in sunny Australia. See more of Didga here: ...",
    "thumbnails": {
     "default": {
      "url": "https://i.ytimg.com/vi/XNR_wrAaoqA/default.jpg",
      "width": 120,
      "height": 90
     },
     "medium": {
      "url": "https://i.ytimg.com/vi/XNR_wrAaoqA/mqdefault.jpg",
      "width": 320,
      "height": 180
     },
     "high": {
      "url": "https://i.ytimg.com/vi/XNR_wrAaoqA/hqdefault.jpg",
      "width": 480,
      "height": 360
     }
    },
    "channelTitle": "GoPro",
    "liveBroadcastContent": "none"
   }

【讨论】:

  • @DalmTo,我认为这也行不通。我在 Youtube 本身上搜索了逗号分隔值,但它不是 100% 准确的。那里有大约 70-75% 的准确结果。我试过这个:youtube.com/results?search_query=waterproof%2Cankita
  • 可能是因为没有防水和cankita的视频。请记住,API 的工作方式与 YouTube 网站并非 100% 相同。该网站在比 api 更多的字段中搜索。你永远不会得到完全相同的结果。尝试冲浪,猫你会得到两者的结果。如果它不起作用,你会得到一个错误,或者它会返回单词“surfing,cat”的结果,因为所有的文本都是这样的。它不是它与 surfing 和 cat 的返回结果另外,如果有记忆的话,它只搜索标题而不是描述。
  • 你能帮我解决我在这里发布的这个问题吗:stackoverflow.com/questions/47593438/…
【解决方案2】:

对于AND,我认为您可以将两个关键字都放在搜索中,它的作用类似于AND。

但是对于 OR 运算符,YouTube 似乎在每次搜索中只支持一个 OR 运算符。当您在查询中放置 2 个或更多 OR 时,它不会返回任何内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-06
    • 2021-06-25
    • 2023-03-14
    • 2019-08-01
    • 2020-09-03
    • 1970-01-01
    相关资源
    最近更新 更多