0

让我首先说我对 PHP 几乎一无所知,但是,我认为这可能被证明是做我想做的事情的最佳方式。我想从外部页面获取变量的值,以便我可以处理它以在我的页面上创建图表和统计信息。我试图从中获取变量的示例页面(需要 Facebook 帐户)是 - http://superherocity.klicknation.com/game/pages/battle_replay.php?battle=857337182

变量名称是 fvars,它包含有关 2 个玩家用于攻击的数据、他们造成的伤害等数据。最终,我想要提供一个页面,其中包含一个玩家可以进入并插入他们的回放的表单链接(如上)并获得战斗的简洁详细的细分。

至少,如果有人可以向我解释如何在表单提交后以重播 url 作为输入来回显 fvars 的值,那将非常有帮助!我试过在这里查看一些 PHP 参考资料和其他帖子,但到目前为止已经丢失了。:(

感谢您的任何帮助或指导。

4

2 回答 2

2

您可以使用的一种方法是使用 Selenium。您需要设置 selenium 服务器和浏览器,然后编写一个 selenium 脚本来为您获取页面。这里的关键点是 selenium 可以通过 selenium 以编程方式运行带有 javascript、facebook 登录等的 firefox 客户端,以及您在普通 firefox 上拥有的一切。

我在 Linux 环境中运行 selenium 并通过 php cli 脚本控制它。我运行 java selenium-server-standalone 以及 framebuffered X 和 firefox。PHP 单元测试库已经有了一个扩展,尽管你显然不需要它来进行测试。

于 2012-11-30T15:59:26.030 回答
1

您可以像这样获取任何网页的内容:

$homepage = file_get_contents('http://www.example.com/');
echo $homepage;

然后只需使用正则表达式或基本搜索在 $homepage 中找到您需要的变量。问题是您需要通过 Facebook 登录。我知道目前没有使用 PHP 动态执行此操作的方法。麦克风

编辑:找到一个解决这个确切问题的 SO 问题 -从需要登录的网站抓取?

于 2012-11-30T15:40:23.397 回答