<分区>
各位,
我需要完成一些复杂的网络抓取。
目标简单来说:登录页面,在某些文本字段中输入一些值,单击提交,然后从检索到的页面中提取一些值。
什么是最好的方法?
- 一些单元测试第 3 方库?
- 在 C# 中手动抓取?
- 也许有专门为此准备的库?
- 还有其他方法吗?
这需要在网络应用中完成。
非常感谢您的帮助。
<分区>
各位,
我需要完成一些复杂的网络抓取。
目标简单来说:登录页面,在某些文本字段中输入一些值,单击提交,然后从检索到的页面中提取一些值。
什么是最好的方法?
这需要在网络应用中完成。
非常感谢您的帮助。
最佳答案
等待。
var browser = new IE();
browser.GoTo("http://www.mywebsite.com");
browser.TextField("username").TypeText("username goes here"); // alternatively, use .Value = if you don't need to simulate keystrokes.
browser.Button(Find.ById("submitButton")).Click();
在返回页面上的断言中:
Assert.AreEqual("You are logged in as Username.", ie.TextField("username").Value); // you can essentially check any HTML tag, I just used TextField for brevity.
编辑 -
阅读有关在 Web 浏览器中执行此操作的编辑后,您可能会考虑使用 WebRequest 和 HTML Agility Pack 来验证您返回的内容:
网络请求:
http://msdn.microsoft.com/en-us/library/debx8sh9.aspx
HTML 敏捷包:
关于c# - 使用 C# 测试网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3418324/