gpt4 book ai didi

php - dom完成后如何解析javascript加载的内容

转载 作者:行者123 更新时间:2023-11-30 06:46:53 28 4
gpt4 key购买 nike

我一直致力于解析来自 wow armory 的一些数据,但遇到了一些障碍。当涉及到提供玩家获得的成就的网站时,它使用 javascript 来控制一个字符串,例如 #73:1283 来显示请求的信息。 (这个数字是我编的,但是请求的数据是这样格式化的)。

  1. 是否可以从需要 javascript 的页面中提取数据以使用 php 显示其数据?
  2. 如何使用 php 解析 dom 准备好或完成后加载的站点数据?

最佳答案

通过使用 Firebug,我能够查看 HTTP header 以查看正在进行哪些 AJAX 调用以生成这些页面上的内容:http://us.battle.net/wow/en/character/black-dragonflight/glitchshot/achievement#96:14861http://us.battle.net/wow/en/character/black-dragonflight/glitchshot/achievement#96

看起来页面正在异步调用以加载此页面:http://us.battle.net/wow/en/character/black-dragonflight/glitchshot/achievement/14861当散列后的部分为 96:14861 时,调用 http://us.battle.net/wow/en/character/black-dragonflight/glitchshot/achievement/96当哈希后的部分仅为 96 时。这两个页面都返回可以解析以呈现 HTML 的 XML。

所以一般来说,如果哈希后面只有一个数字,就把http://.../achievement/<number here>作为网址。如果有两个数字,则将第二个数字放在 URL 的末尾。

您需要做的不是提取 Javascript 并对其进行解释,而是自己在 PHP 中向这些 URL 发出 HTTP 请求(例如使用 cURL)并自行解析数据。

我强烈建议您学习 JavaScript 和 jQuery,因为如果不了解后台发生的所有 AJAX 加载,您将很难真正构建一个从 WoW Armory 提取信息的好网站。

关于php - dom完成后如何解析javascript加载的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5785887/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com