提问人:Hanna 提问时间:9/28/2022 更新时间:11/13/2023 访问量:78
从查看源抓取数据:https://www.youtube.com/embed/
Scraping data from view-source:https://www.youtube.com/embed/
问:
我有一大堆嵌入式 Youtube 视频。其中一些不可用。
我正在寻找一种解决方案,如何在大量 URL 中识别它们。
可以通过以下方式手动检查:
例如,嵌入式 Youtube 视频 - https://www.youtube.com/embed/GdGB0cv6i8I
查看源代码:https://www.youtube.com/embed/GdGB0cv6i8I
previewPlayabilityStatus - “视频不可用”
我正在尝试将其与带有公式的 Google 电子表格相结合
以下是该文件的链接:https://docs.google.com/spreadsheets/d/1fHB2UvCVxq4tgNrn_VWlmGyfpXyS-vhbWu57EjUaKsw/edit#gid=0
由于某些原因,它不起作用。
答:
1赞
Benjamin Loison
9/28/2022
#1
继续您之前的问题,您可以通过使用我的无键服务来解决您的问题,如下所示,带有 Google Apps 脚本(请参阅我修改后的 Google 表格示例):
function fills_embeddable_associated_to_given_youtube_videos() {
const A = 1, B = 2;
var sheet = SpreadsheetApp.getActiveSheet();
for(var row = 2; row <= sheet.getLastRow(); row++)
{
const videoId = sheet.getRange(row, A).getValue().toString().replace("https://www.youtube.com/embed/", "").replace("view-source:", "");
const responseStr = UrlFetchApp.fetch(`https://yt.lemnoslife.com/videos?part=status&id=${videoId}`).getContentText();
const response = JSON.parse(responseStr);
sheet.getRange(row, B).setValue(response["items"][0]["status"]["embeddable"]);
}
}
评论
0赞
Hanna
9/29/2022
本杰明,非常感谢。工作正常!
0赞
Hanna
9/29/2022
我发现了一个奇怪的事情:一个私人嵌入的 youtube 链接(例如 youtube.com/embed/qPNiIeKMHyg)以前是公开的,在博客文章中仍然可见。怎么可能?这是否意味着数据被缓存在某个地方,并且在一段时间内,这个 yourtube url 最终将变得不可见?
0赞
Benjamin Loison
9/29/2022
你指的是什么博文?我看不出任何问题,因为 qPNiIeKMHyg
有:(根据 YouTube Data API v3 Videos: list with ),youtube.com/embed/qPNiIeKMHyg 显示和我的 Videos: list endpoint of YouTube operational API returns : (yt.lemnoslife.com/videos?part=status&id=qPNiIeKMHyg)。AFAIK 公共视频作者可以禁用嵌入,这里似乎就是这种情况。snippet/privacyStatus
public
part=status
Video unavailable
status/embedabble
false
评论