php - 从Javascript获取可变文本

时间:2017-11-22 03:26:48

标签: javascript php

我正在使用simple_html_dom抓取一些网页,我需要帮助。这是我的Javascript:

<script type="text/javascript">
    var session = "";
    var order = "1";
    var status = "";
    var json_product = [{bla bla bla...}];
</script>

所以我想进入var json_produk = ...的意思是:

[{"bla.... bla... bla... until }];

我怎样才能得到它?

我正在努力:

$html->find('var', 2);

我只是得到500错误,因为我认为找到用于查找字符串。

1 个答案:

答案 0 :(得分:0)

  

我正在使用[HTML解析器]来抓取一些网页

但是你想要的值是javascript(嵌入在HTML中)。

虽然你可以使用DOM解析器检索整个javascript块,但它的分辨率和它一样多。

$script=$html->find('script') . ''; // not tested - YMMV

PHP没有Javascript解析器。如果您可以确定JSON将始终分配给“json_product”并且没有其他javascript代码,那么您可以.....

$srch='json_product =';
$start=strpos($script, $srch);
$json=substr($script, $start+strlen($srch)+1);
$data=json_decode($json);

....但这距离强大的解决方案还有很长的路要走。

  

我只是得到500错误,因为我认为找到用于查找字符串。

这不应该导致“500错误”