开发者

c# save contents of IE browser as html

I have an Internet Explorer window open. The title of this window will always be "test123" how do I save the source of the contents of the window as an HTML file?

Please note that the proc开发者_如何学Goess should not be to open a URL and read the HTML into a variable. I absolutely HAVE TO do it the way I described since I need to login to a site to be able to view the HTML that I want to save.

**if it makes it easier to do this through my winform and putting a webbrowser control on it, that is fine as well.


You can attach to virtually any Windows app, using managed code and the UI Automation classes. Not a lot of people know about this stuff.

Microsoft shipped a class library and runtime that allows applications to automate other Windows on the system. You can do things like click buttons, read textboxes, activate menus, and so on. Here's a quick intro.

It should be relatively simple to attach to an IE Window, and then programmatically tickle the File...Save As... menu option.

I did this the other day for a Paint.NET app. It took much less time that I thought it would.


But I agree it's probably easier to use a WebBrowser control in a regular app, to programmatically retrieve content. You could also use the System.Net.WebClient class to do it, if you don't need to show the HTML content.


If you embed a WebBrowser control inside of your WinForm you can do this:

webBrowser1.Navigate("http://StackOverflow.com");
string pageHtml = webBrowser1.Document.GetElementsByTagName("html")[0].InnerHtml;

This will return all of the HTML in the page navigated to.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜