2017-05-29 58 views
1

基本上我想从外部HTML页面从脚本标签中获取数据,从脚本内部获取数据并将其传递给纯文本与PHP?

例子:

<script type="text/javascript"> 
var playerInstance = jwplayer("jwplayer"); 
    playerInstance.setup({ 
    id:'jwplayer', 
    width: "100%", 
    height: "100%", 
    aspectratio: "16:9", 
    fullscreen: "true", 
    primary: 'html5', 
    provider: 'http', 
    autostart: false, 
    sources: [{"type":"video/mp4","label":360,"file":"MY-VIDEO-LINK"},{"type":"video/mp4","label":480,"file":"MY-VIDEO-LINK"}], 
}); 

我只是想黑标:>> 来源:[{ “类型”: “视频/ MP4”, “标签”:360, “文件”: “MY-VIDEO-LINK”},{ “类型”: “视频/ MP4”, “标签”:480, “文件”: “MY-VIDEO-LINK”}]

我可以访问使用PHP的页面:
$url = 'http://my-external-site.com/embed.php?url=blahblahblah';

我试着卷曲,没有运气,和DOM,几乎没有:

include_once('simple_html_dom.php'); 
$html = file_get_html($url); 
$elem = $html->find('sources', 0); //tried with 'sources' but probably is wrong 
echo $elem; 

我欣赏的帮助,在此先感谢!

回答

0

试试这个没有simple_html_dom的代码。 EDITED

$url = 'YOUR_URL'; 
$curl = curl_init($url); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); 
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.224 Safari/534.10'); 
$html = curl_exec($curl); 
curl_close($curl); 
$dom = new DOMDocument(); 
@$dom->loadHTML($html); //convert character asing 
$xpath = new DOMXPath($dom);  
$script = $xpath->query ('//script[contains(text(),"sources:")]')->item (0)->nodeValue; 

$json = end(explode('sources:', $script)); 
$json = explode (']', $json)[0].']'; 

echo $json 

希望它可以帮助

+0

这只是返回']'和需要一些时间来加载。 –

+0

是如果你回声$脚本结果相同的JavaScript代码? –

+0

不!这是一个单一的']' –

相关问题