我是 AJAX 和 php 的新手,一直在尝试弄清楚如何使用 PHP HTML DOM 解析器从外部站点获取 html。然而,获取的 html 是立即加载到 DOM 中的,我需要稍后通过 Javascript 包含在页面中的元素。如何使用 PHP 获取后者。
示例:当我使用解析器加载时:http://csgo.exchange/id/76561198078821986 左侧h3标签中的大数值是“0.00”,因为h3标签以“0.00”的值加载到dom中,然后通过Javascript修改为其实际值。如何获取真实值?
最佳答案
您无法在该页面上使用 PHP 解析器的原因是它不运行 javascript,仅运行 HTML。
如果您坚持从该页面获取数据,您将需要一个 headless 浏览器,例如 PhantomJS
否则获取数据的方法是找到 javascript 从哪里获取数据并传递相同的变量。
在你的例子中是:http://csgo.exchange/inventory/76561198078821986/retry/
您现在可以使用 PHP HTML 解析器解析此 URL 并获取您需要的值。
要遵守的一个好规则是始终尝试以 html
或 json
的形式查找最原始形式的数据。 Chrome 的网络选项卡是您最好的 friend 。
关于javascript - PHP - 从完全加载的外部页面加载 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36299733/