我的问题与此one非常相似, 我想使用频道自定义名称来获取频道ID。
上述问题的答案是:
GET https://www.googleapis.com/youtube/v3/search?part=id%2Csnippet&q=annacavalli&type=channel&key={YOUR_API_KEY}
不适用于小型频道,例如当我用这个频道运行它时:https://www.youtube.com/AnnaShearerfashionfettish它什么都不返回。
答案 0 :(得分:1)
你试过吗
https://www.googleapis.com/youtube/v3/channels?part=snippetforUsername={username}&key={your key}
请务必将{your key}
更改为您的API密钥,并{username}
更改为所需的用户名。
答案 1 :(得分:1)
使用curl
和grep
非常简单。
命令
channel_name='DOVASYNDROMEYouTubeOfficial' #change this as you like
curl --silent "https://www.youtube.com/c/${channel_name}/videos" |\
grep -o -P '(?<=canonical" href="https://www.youtube.com/channel/)[^"]*'
输出
UCq15_9MvmxT1r2-LLjtkokg
答案 2 :(得分:0)
我没有找到直接的方法来做到这一点。我做了一个GET请求来获取频道页面HTML并解析它。
我使用Jsoup来解析html响应。
val doc = Jsoup.parseBodyFragment(body)
val links = doc.select("link[rel=canonical]")
val channelUrl = links.first().attributes().get("href")