Просто оптимизацию скорости сравните с @ stack0114106, которая уже работает
awk -F '[<>]' '$2 == "resource-name" && ! ( $3 in List) { print $3; List[$3] } ' test.xml
Для этого не нужно использовать регулярное выражение.
var video_id = window.location.search.split('v=')[1];
var ampersandPosition = video_id.indexOf('&');
if(ampersandPosition != -1) {
video_id = video_id.substring(0, ampersandPosition);
}
Что ж, способ сделать это с помощью простого синтаксического анализа: получить все, начиная с первого знака = до первого знака & .
Думаю, здесь был похожий ответ:
Вот радикально другое решение.
Вы могли запросить, чтобы документ JSON oEmbed от 'https://www.youtube.com/oembed?format=json&url=' . rawurlencode($url)
и затем thumbnail_url
имел фиксированный формат, соответствуйте ему шаблону PCRE как https://i.ytimg.com/vi/([^/]+)
, первая группа является идентификатором YouTube.
import pytube
yt = pytube.YouTube("https://www.youtube.com/watch?v=kwM2ApskJy4")
video_id = yt.video_id
print("video id from utl..",video_id)