I'm looking for a headless browser for .NET multithread application. It must has next features:
- Working without any server installation. I need just simple library to distribute with my application.
- Ajax/HTML 5 support. Ability to work with pages elements: find and read attributes through internal/external (SGMLReader) XML, or using API to click buttons, fill forms, etc.
- Correctly cookies container (correctly working with multiple cookies response and storing cookies during all session)
- Customizable browser line (even selecting Chrome/Firefox is enough)
- Multithread. So no static cookies container or smth. else. I need be able to login and working with same site under 2-100000 different users.
- Fast working
- Working with https by using insecure SSL.
I found this solutions:
- PhantomJS. I don't understand how to work with this library from .NET, and if this solution suitable to my demands.
- HtmlUnit with ikvm. Not work with YUI library.
- WebKit.Net.
- HTML Agility Pack
- Awesomium
but don't know what is a best. Will be pleasure if you suggest me best solution and give some .NET examples of using it.
I read this, this, and many others answers and I haven't found answer still.