任何人都有一个很好的解决方案来抓取带有 Javascript 生成的内容(在本例中为 HTML 表)的页面的 HTML 源代码?
使用Crowbar的一个非常简单但可行的解决方案:
<?php
function get_html($url) // $url must be urlencode(d)
{
$context = stream_context_create(array(
'http' => array('timeout' => 120) // HTTP timeout in seconds
));
$html = substr(file_get_contents('http://127.0.0.1:10000/?url=' . $url . '&delay=3000&view=browser', 0, $context), 730, -32); // substr removes HTML from the Crowbar web service, returning only the $url HTML
return $html;
}
?>
使用 Crowbar 的优势在于,由于基于无头 mozilla 的浏览器,表格将被呈现(并可访问)。编辑:发现 Crowbar 的问题是一个冲突的应用程序,而不是服务器停机时间,这只是一个巧合。