【发布时间】:2011-02-27 22:40:53
【问题描述】:
我被指派创建一种“某种”网络爬行者。任务是访问某些网站,输入一段数据,然后提交该数据以接收结果。
我发现 WatiN 是获取这些数据的好工具,因为它是开源的并且具有我需要的所有功能 - 即使这是对测试 API 的滥用(是否滥用?)。
无论如何 - 真正的问题是,
Browser.WaitForComplete();
不等待所有内容加载。似乎它只是等待最后一个 body 标签然后返回。但是我相信当页面完成加载时不会生成 cookie,因为它是由 ASP.NET 后端生成的 - 它似乎是在看起来像 AJAX 或类似的东西的交互式对象之后加载的。
我不拥有或托管该网站,因此只能根据我从浏览器和我可以使用的其他工具中看到的信息来收集信息。
有什么方法可以让 WatiN 等待 cookie 更新?
提前致谢。
约翰。
编辑:
作为我正在做的一个例子来解决这个问题(这有点不正统,但它正在解决这个问题)。
Browser.WaitForComplete();Browser.WaitForComplete();Browser.WaitForComplete();Browser.WaitForComplete();Browser.WaitForComplete();Browser.WaitForComplete();Browser.WaitForComplete();Browser.WaitForComplete();
var cookie = Browser.Eval("document.cookie");
现在你可能明白我为什么要找到真正的解决方案了。
谢谢
【问题讨论】:
标签: c# browser cookies watin wait