php - track kind div 的输出 src

标签 php regex extract file-get-contents webvtt

如何使用给定网站的 php file_get_content 输出以下 div 的 SRC?

<div class="videocontainer">
<input type="file" id="srtSelector"/>
<video class="video-js vjs-default-skin vjs-big-play-centered" id="olvideo">
<track kind="captions" src="https://rolled.oped.info/sub/jAghd9t8AB4/HfQZ32SovcY.vtt"/>
</video>
</div>

我有兴趣显示 https://rolled.oped.info/sub/jAghd9t8AB4/HfQZ32SovcY.vtt部分。

谢谢!

最佳答案

最好尝试使用 DOM,而不是使用正则表达式等。 DOMDocument 并不总是易于使用,但对于您的问题,它可能可以完成工作...

$html = <<< HTML
<div class="videocontainer">
<input type="file" id="srtSelector"/>
<video class="video-js vjs-default-skin vjs-big-play-centered" id="olvideo">
<track kind="captions" src="https://rolled.oped.info/sub/jAghd9t8AB4/HfQZ32SovcY.vtt"/>
</video>
</div>
HTML;

$dom = new DOMDocument();
libxml_use_internal_errors(true);
$dom->loadHTML($html);

$tracks = $dom->getElementsByTagName("track");

foreach ( $tracks as $track )   {
    echo (string)$track->getAttribute("src").PHP_EOL;
}

代码应该足够容易理解。

您可能面临的最大问题是,如果 HTML 有错误(如问题中的原始错误),那么有时会导致加载困难。

关于php - track kind div 的输出 src,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50549559/

相关文章:

php - 从两个或多个具有某些列名的 sql 表中选择

regex - 如何在 Perl 中进行链式正则表达式?

regex - 如何使用 sed、grep 或 awk 只获取 token ?

php - 如何从数据库中回显回车符和撇号?

php - 提交后显示表单数据

php - 如何在 PHP 字符串比较中模拟 MySQLs utf8_general_ci 排序规则

javascript - 需要字母和数字 - 正则表达式

shell - 使用 VBA Shell 命令提取文件夹中的所有 .gz 文件

php - 使用 extract( $_REQUEST, EXTR_IF_EXISTS ) 安全吗?

excel - 从列表中提取唯一值并在 Excel 中按出现次数排序