用于在启用ajax的网站上自动执行操作的脚本

时间:2010-03-02 11:00:00

标签: php javascript perl curl

在瑞士,26岁以下与Swisscom签订手机合约的人可以使用网站https://xtrazone.sso.bluewin.ch/免费每月发送500条短信。

直到几天前,这个网站的结构非常简单,它有一个登录和一个输入框来输入短信。这就是为什么我写了一个perl脚本(http://github.com/gwrtheyrn/Xtrazone-SMS-Tool)来使用curl通过该服务发送短信。这很有效。

现在他们重写了整个网站,我面临以下问题,以便能够重写脚本:

  1. 登录后有一个CAPTCHA
  2. 使用javascript加载loginbox并使用ajax
  3. 处理输入
  4. 进入接收器的框不是标准输入框,它是一个特殊的javascript输入框
  5. 我剩下的问题:

    • 我如何绕过验证码?我想到了Tesseract(http://code.google.com/p/tesseract-ocr/)。这可能适用于perl(有一个包装器)。
    • 有没有办法在不启动浏览器的情况下执行JavaScript操作?我想保留工具命令行。

    提前致谢。

2 个答案:

答案 0 :(得分:4)

如果您使用某种类型的网络跟踪(有一个作为firefox的附加组件,fiddler是可通过的独立备选方案)运行该过程,您应该能够看到实际发出的请求是什么javascript到服务器。正是这些,你需要你的脚本才能模仿。

答案 1 :(得分:0)

我已成功使用Tesseract对抗一个验证码而不是另一个验证码。但如果验证码是要加载文本框,则可能不需要它。

为firefox抓取Tamper Data。输入验证码后启动它并查看它们发出的POST请求。有可能你可以通过CURL直接发送POST命令,而不用打扰javascript