这可能是一个非常不寻常的问题,但基本上有另一个域的页面(我可以查看,但无法编辑/更改)有一个按钮。单击该按钮时,它会生成一些唯一键。
我需要使用我的Web服务(使用ASP .NET MVC3)来获取这些唯一键我可以获取页面的初始HTML,但是如何强制页面“单击”按钮以便我可以获得POST后的值?
通常,我会重复使用代码来自己生成密钥,但我无法访问逻辑。
我希望这是有道理的。
答案 0 :(得分:2)
使用例如firebug用于查看与表单一起发送的POST参数,然后从代码中生成相同的POST。
为此,您可以使用WebRequest
或WebClient
。
请参阅此SO问题,以帮助您完成此操作:
然后只使用您选择的技术解析响应(如果响应格式正确,我会使用正则表达式 - Regex或LinqToXml。)
注意:请记住,您的代码将依赖于您未维护的某些服务。因此,当服务不可用,已停止或POST文件或响应的格式将被更改时,您可能会遇到问题。
答案 1 :(得分:0)
这实际上取决于目标网站上的技术。
如果页面是简单的HTML表单,那么您可以轻松发送POST。您需要将预期的数据发送到POST。然后你可以解析数据。
如果不是那么直接,您将需要研究自动化点击的方法。检查Selenium。如果结果页面混乱,您可能还需要使用报废。