寻找解决方案,我找到了不同的方法。有些使用正则表达式,有些使用DOM脚本或其他东西。
我想去网站,登录,填写表格,然后检查表格是否已发送。登录部分是我找不到任何东西的部分。
任何人都知道一种简单的方法吗?
答案 0 :(得分:3)
我同意莱斯。 Curl + Charles(或Fiddler,Firefox的Tamper Data扩展,wireshark等)是我一直这样做的方式。我发现的一个技巧是某些网站需要三个步骤:
不要计划curl的cookie jar和cookie文件有很大帮助。您可能最好使用简单的正则表达式从头中解析会话ID和cookie。
希望这有帮助!
答案 1 :(得分:1)
如果您需要执行大量GUI工作,那么使用某种可编写脚本的浏览器可能会更好。如果您需要使用PHP,请查看curl:http://us2.php.net/curl
答案 2 :(得分:1)
答案 3 :(得分:0)
您可能想看看Perl的LWP库(我知道它不是PHP,但它对于屏幕抓取,Web单元测试等非常有用):
答案 4 :(得分:0)
我在这方面有相当多的经验。我曾经使用Curl,但使用它并不好玩。特别是很多时候站点交换XSRF令牌,或传递隐藏变量,或设置各种cookie。使用Curl跟踪所有这些变得困难。至少对于我来说。
然后我探索了Selenium并且我喜欢它。有两件事 - 1)安装Selenium IDE(仅适用于Firefox)。 2)安装Selenium RC Server
启动Selenium IDE后,转到您尝试自动执行的站点,并开始记录您在站点上执行的事件。将其视为在浏览器中录制宏。然后,您将获得所需语言的代码输出。
您知道Browsermob使用Selenium进行负载测试以及在浏览器上自动执行任务。
我已经上传了一段我曾经做过的ppt。这可以为您节省大量时间 - http://www.4shared.com/get/tlwT3qb_/SeleniumInstructions.html
在上面的链接中选择常规下载选项。