在PHP中模拟浏览器单击

时间:2010-08-11 01:27:12

标签: php

我想编写一个PHP脚本,在我使用的Web应用程序中执行例行任务。我想找出提交表单最简单的方法,点击链接,并获取一些信息。最简单的方法是什么(保持会话开放等)。

4 个答案:

答案 0 :(得分:3)

Javascript将是比PHP更好的解决方案。您可以与PHP一起使用它来提交引用相同页面的表单,即。 <form method='index.php' action='post'>

答案 1 :(得分:1)

我可以使用PHP中的CURL模拟提交数据,点击链接等,但我认为,像Javascript这样的客户端脚本语言 - 而不是像PHP这样的服务器端语言 - 更适合于你在描述什么。我需要更多信息给你一个具体的例子。

答案 2 :(得分:1)

您将无法直接在PHP中模拟这些事件,因为Web应用程序在客户端使用Javascript而PHP是另一种语言并且在服务器端运行。

首先,我会看看是否有可用于您想知道的网络应用的开放API,例如Gmail:http://code.google.com/apis/gmail/。并非所有API都可以执行Web应用程序可以执行的操作,因此您需要检查文档以确保API能够执行您想要的操作,并且可以轻松地与PHP进行交互。

另一种选择是基本上逆向设计Web应用程序与其服务器的通信方式。大多数Web应用程序都通过以某种序列化格式(如XML,JSON或文本)发送POST或GET HTTP数据来运行。您可以使用类似Firefox的Firebug插件来查看POST / GET数据。如果您知道服务器发送给客户端的内容以及客户端发送给服务器的内容,您实际上可以使用CURL之类的东西编写脚本,以使用PHP而不是JavaScript来模拟客户端。这将需要相当多的工作,可能涉及很多跟踪&amp;错误。

答案 3 :(得分:1)

如果方法是GET,那么你应该能够通过一些现实世界的尝试来解决这个问题。

它POST,那么你可能是SOL,除非它是你自己的网页./app并且你知道它预期的$ _POST ...除非你找到一个工具来窥探你的HTTP流量并从观察一些真实的获取POST信息扭曲的例子。