【问题标题】:How to download full website or web pages through URL?如何通过 URL 下载完整的网站或网页?
【发布时间】:2013-11-18 07:46:36
【问题描述】:

我必须开发像网站下载器这样的应用程序,它应该允许用户通过其 URL 将整个网站(网站的所有文件)下载到磁盘上的指定位置。目前,我只能使用 WebRequest 和 WebResponse 类获取主页的 html。我尝试过使用

的另一种解决方案 WebClient Client = new WebClient(); Client.DownloadFile("http://www.techprism.net/Default.aspx", "D:\\Downloader\\Default.aspx");

但是在这里我必须将具有相同名称的文件放在要下载的物理位置上,而且我也无法下载页面上正在使用的 CSS 和 JS。我还想让我的应用程序包含内置浏览器,以便在离线模式下浏览下载的文件。

请在这方面帮助我。提前感谢您的友好指导。

【问题讨论】:

  • 您将不得不做更多的工作 - 网站不会自动告诉您要下载的所有文件,您必须爬过并识别所有文件。或者(如前所述)使用 wget 之类的工具。

标签: .net c#-4.0 web


【解决方案1】:

WGet http://www.gnu.org/software/wget/ 不做所有需要的事情。只需在其周围放置一个包装器

我相信您可以使用 .Net 完成所有工作。但是,我使用 WGet 下载整个网站非常成功。

【讨论】:

  • 我浏览过 WGet 并知道 wget 是一个命令行实用程序。但是我从任何地方都没有得到任何想法,我们如何使用 .net 来实现它?
  • 只需从 .Net 调用命令行实用程序并将所需的参数传递给它 - 这将使您将网站存储在本地。然后你只需要实现一个基本的网络浏览器控件并指向下载的站点
  • 感谢您的热情回复 Graeme。您使用 WGet 和 .net 下载网站?
  • 是的 - 但这可能是因为我在 Perl 时代就熟悉它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-24
  • 2020-11-22
  • 2017-11-17
  • 1970-01-01
相关资源
最近更新 更多