C#下载一个包含正确显示所需内容的网站

C#下载一个包含正确显示所需内容的网站,c#,web-crawler,C#,Web Crawler,以下场景:我们已经开发了大约400个个人网站,目前正在尝试构建我们的投资组合。由于多种原因,我们希望显示该指数,以便将其放入我们的投资组合中。第一个想法是对每个站点进行编程截图。我们公司的负责人立即揭穿了它,因为他们想现场展示。显然,iFrame不是替代品。所以我们必须下载索引。可能只有正确显示所需的样式和图像 我不确定如何开始这样做 你们有什么想法吗?CodedUI(和Selenium)的底层技术使用网络爬虫来隔离网页的特定有用部分。我建议使用底层库来抓取运行live的网页,并提取构成页面结构

以下场景:我们已经开发了大约400个个人网站,目前正在尝试构建我们的投资组合。由于多种原因,我们希望显示该指数,以便将其放入我们的投资组合中。第一个想法是对每个站点进行编程截图。我们公司的负责人立即揭穿了它,因为他们想现场展示。显然,iFrame不是替代品。所以我们必须下载索引。可能只有正确显示所需的样式和图像

我不确定如何开始这样做


你们有什么想法吗?

CodedUI(和Selenium)的底层技术使用网络爬虫来隔离网页的特定有用部分。我建议使用底层库来抓取运行live的网页,并提取构成页面结构的任何图像和div

然后,您可以将它们作为静态HTML发出,以使页面快照适合站点索引


这样做意味着您将使用与测试自动化相同的技术,但是您可以从HTML中提取有用的结构并将其作为页面快照发出,而不是运行测试。您必须标记HTML中的“有用”部分,以使爬虫程序能够仅提取您认为应该索引的项(即,如果是HTML5,则包括数据属性)。这可能需要很多工作-因此,如果您只需要每个页面的屏幕截图,只需使用Selenium或CodedUI来抓取您的站点并捕获屏幕图像。

您在谈论什么类型的索引?(我假设索引是菜单栏)如果是你自己的网站,你可以抓取普通的html代码,并在每个页面的索引区域中查找特定的类/id。从market div+div定义本身获取所有代码。拉取所有外部资源(如css文件),然后你就可以了(虽然这只是为了展示,但如果索引按钮后面的链接是动态的,它们很可能会断开,你还需要修复指向外部文件的链接,或者确保原始网站仍然在线)