这可能是一个非常不寻常的问题,但基本上另一个域上的页面(我可以查看,但不能编辑/更改)有一个按钮。单击该按钮时,它会生成一些唯一键。
我需要使用我的 Web 服务提取这些唯一键(使用 ASP .NET MVC3)我可以获得页面的初始 HTML,但是如何强制页面“单击”按钮,以便我可以在之后获取值邮政?
通常,我会重用代码自己生成密钥,但我无权访问逻辑。
我希望这是有道理的。
这可能是一个非常不寻常的问题,但基本上另一个域上的页面(我可以查看,但不能编辑/更改)有一个按钮。单击该按钮时,它会生成一些唯一键。
我需要使用我的 Web 服务提取这些唯一键(使用 ASP .NET MVC3)我可以获得页面的初始 HTML,但是如何强制页面“单击”按钮,以便我可以在之后获取值邮政?
通常,我会重用代码自己生成密钥,但我无权访问逻辑。
我希望这是有道理的。
使用例如 firebug 查看随表单发送的 POST 参数,然后从您的代码中进行相同的 POST。为此,您可以使用WebRequest
或WebClient
。请参阅此 SO 问题,这将帮助您如何做到这一点:
然后只需使用您选择的技术解析响应(如果响应是格式良好的 XML,我将使用正则表达式 - Regex或 LinqToXml)。
注意:请记住,您的代码将依赖于您未维护的某些服务。因此,当服务不可用、中断或 POSTed 表单或响应的格式将被更改时,您可能会遇到问题。
这实际上取决于目标站点上的技术。
如果页面是简单的 HTML 表单,那么您可以轻松地发送 POST。您需要将预期的数据发送到 POST。然后就可以解析数据了。
如果它不是那么直截了当,您将需要研究自动点击的方法。检查硒。此外,如果结果页面一团糟,您可能需要使用报废。