轨道类div的输出src

时间:2018-05-27 06:20:39

标签: 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部分。

谢谢!

1 个答案:

答案 0 :(得分:2)

尝试使用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出现错误(如问题中的原始错误),则有时会导致加载困难。