【发布时间】:2016-01-20 21:25:22
【问题描述】:
我正在尝试将远程页面的 HTML 源代码加载到 PHP 中的字符串中,以这个很棒的 Galantis 音乐视频 https://www.youtube.com/watch?v=5XR7naZ_zZA 为例。
然后我想在源代码中搜索特定的 div id“action-panel-details”并确认何时找到。使用下面的代码,整个页面只需加载到我在服务器上运行的页面上。
file_get_contents() 甚至可以做到这一点吗?这是加载页面、视频和所有内容的代码:
<?php
$str = file_get_contents('https://www.youtube.com/watch?v=5XR7naZ_zZA');
if(preg_match("~action-panel-details~", $str)){
echo "it's there";
}
?>
我也尝试过使用 simplexml_load_file() 并最终出现此错误:
Warning: simplexml_load_string(): Entity: line 1: parser error : xmlParseEntityRef: no name in /page.php on line 5
Warning: simplexml_load_string(): ndow, document);</script><script>var ytcfg = {d: function() {return (window.yt & in /page.php on line 5
Warning: simplexml_load_string(): ^ in /page.php on line 5
Warning: simplexml_load_string(): Entity: line 1: parser error : xmlParseEntityRef: no name in /page.php on line 5
这是产生它的代码:
<?php
$str = file_get_contents('https://www.youtube.com/watch?v=5XR7naZ_zZA');
$str = simplexml_load_string($str);
if(preg_match("~watch-time-text~", $str)){
echo "it's there";
}
?>
非常感谢任何帮助。
【问题讨论】:
标签: php preg-match file-get-contents simplexml