用于保存整个网页的C#代码? (带图像/格式)

发布时间:2019-12-08 整理:脚本之家
脚本之家收集整理的这篇文章主要介绍了用于保存整个网页的C#代码? (带图像/格式)脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随脚本之家小编过来看看吧!
我一直在努力寻找一些C#代码的例子(我正在使用C# Visual Studio 2008 Express),它可以以编程方式保存整个网页(给定URL),包括图像和格式(例如CSS).目的是在后续阶段我将其发送出去(不确定如何),以便稍后通过浏览器查看.

是否有一个最简单的方法(利用.NET Framework方法)保存整个网页的示例?保存为具有图像子目录的一个页面,或者以其他方式保存.当您说“保存整个网页”时,基本上与浏览器相同.

解决方法

最简单的方法可能是在应用程序中添加一个 WebBrowser Control,并使用Navigate()方法将其指向要保存的页面.

然后,当文档加载完毕后,调用ShowSaveAsDialog method.然后,用户可以将页面保存为单个文件,或将文件保存在子目录中.

[更新]

现在已经注意到了“编程”问题,上述方法并不理想,因为它需要用户参与或深入研究Windows API以使用SendKeys或类似方式发送输入.

.NET Framework中没有任何内置功能可以满足您的所有要求.

所以我修改的方法是:

>使用System.NET.HttpWebRequest将主HTML文档作为字符串或流(简单)获取.
>将其加载到HTMLAgilityPack文档中,您现在可以在其中轻松查询文档以获取所有图像元素,样式表链接等的列表.
>然后为每个文件发出单独的Web请求,并将它们保存到子目录中.
>最后更新主页面中的所有相关链接以指向子目录中的项目.

实际上,您将实现一个非常简单的Web浏览器.您可能会遇到使用JavaScript动态更改或请求页面内容的页面的问题,但对于大多数页面,这应该给出可接受的结果.

总结

以上是脚本之家为你收集整理的用于保存整个网页的C#代码? (带图像/格式)全部内容,希望文章能够帮你解决用于保存整个网页的C#代码? (带图像/格式)所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ” ,选择关注!
精选程序员所需精品干货内容!

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ”
精选程序员所需精品干货内容!