如何在php中获取包含外部API的网页

迈赫迪·马兹

我有一个加载网页的 php 脚本以从它的表格中提取一些数据。
以下方法无法获取其表格内容:

使用 file_get_contents:

$document -> file_get_contents("http://www.webpage.com/");
print_r($document);

使用卷曲:

$document = curl_init('http://www.webpage.com/');
curl_setopt($document, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($document);
print_r($html);

使用 loadHTMLFile:

$document->loadHTMLFile('http://www.webpage.com/');
print_r($document);

我不是 php 专家,除了第一种方法,其他方法都是从 StackOverflow 的答案中复制的。
我究竟做错了什么?
以及他们如何阻止某些内容加载?

急切

不是您可能想听到的答案,但是您描述的方法都不会像普通浏览器客户端那样评估 JavaScript 和其他浏览器资源。相反,这些方法中的每一个都只检索您指定的文件的内容。快速浏览一下您所定位的站点,您会清楚地看到这个有问题的表被填充为 AJAX 调用的结果,您尝试过的任何方法都无法对其进行评估。

您需要依赖具有此类仿真功能的库或脚本;laravel/duskSelenium webdriver的 PHP 绑定,或类似的东西。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章