C#中的Web浏览 - 库,工具等 - 像Perl中的Mechanize一样吗?

时间:2010-01-27 20:00:45

标签: c# login screen-scraping mechanize

寻找类似于Mechanize for .NET的内容......

如果你不知道什么是Mechanize .. http://search.cpan.org/dist/WWW-Mechanize/

我会在这里保留一份建议清单。用于浏览/发布/屏幕抓取的任何内容(除了WebRequest和WebBrowser控件)。

解析

网络应用测试

工具

  • Firebug for Firefox
  • 适用于IE的Internet Explorer开发人员工具栏
  • Chrome也有一个

注意

WatiN接近我正在寻找的东西,除了它打开一个浏览器,同时令人讨厌和令人敬畏。取决于你在做什么。

7 个答案:

答案 0 :(得分:4)

您可以使用WebBrowser控件,该控件可在一定程度上自动完成。

答案 1 :(得分:2)

您需要使用HTML Agility Pack,它可以将真实网站中的标签汤解析为DOM结构。

答案 2 :(得分:2)

我一直在使用WatiN效果很好。这是一种简单的方法1)自动化用户输入w / IE和2)导航DOM。

答案 3 :(得分:2)

您也可以使用Selenium。它用于单元测试网站。它有一个驱动浏览器的java应用程序和一个可以编写代码的C#接口。它也有显示浏览器的缺点,但它在控制,等待响应和获得结果方面非常全面。< / p>

答案 4 :(得分:1)

Design Canvas是此类事情的最佳工具。适用于IE,Firefox,Safari或内存浏览器。它允许您录制然后播放任何类型的网络互动。

答案 5 :(得分:0)

您希望HttpWebRequest用于自动化网络请求,并HtmlAgilityPack用于处理生成的HTML。

答案 6 :(得分:0)

我有逆向工程Python-Mechanize,并在C#中重新创建它,名为Mechanize.NET。

https://github.com/WilliamABradley/Mechanize.NET

这应该有希望覆盖Mechanize的所有用例,如果没有,或者你发现了一个bug,就会产生问题。

它使用.NET Standard,因此它应该可以在.NET中使用,例如使用F#,VB等。

它在内部使用HtmlAgilityPack,你甚至可以为每个加载的页面收集HtmlDocument。