【问题标题】:Using .Net to capture rendered HTML from URL使用 .Net 从 URL 捕获呈现的 HTML
【发布时间】:2011-12-15 01:24:07
【问题描述】:

是否可以使用一种技术从应用程序中重定向到 URL,并简单地获取将要显示的页面内容,而是将其呈现到电子邮件或其他方式?我相信我已经看到了 InnerHTML 的使用,但这真的是最好的方法吗?对我来说,这似乎有点骇人听闻。 谢谢!

【问题讨论】:

    标签: .net html rendering innerhtml


    【解决方案1】:

    是的,这是可能的。使用WebClientHttpWebRequest 下载页面,将其放入MailMessageBody 中(同时查看IsBodyHtmlAlternateViews 属性),然后使用Send 将其放入@987654324 @。

    但是,应该创建 URL 处的页面,以便它有很好的机会被电子邮件客户端使用:非常少量的 CSS、基于表格的布局(啊...)、即使图像也很好看不由客户端呈现,左对齐文本,无 Javascript,无 Flash,无 Silverlight,无嵌入视频等。有关 HTML 电子邮件创建的详细信息,请参见 thisthis

    如果您下载的页面不遵守这些规则,您可能需要在发送前对其进行修改。 @Gaby 建议的 HTML Agility Pack 是一个 HTML 解析器,也是用于此目的的最佳工具之一。

    【讨论】:

    • 正是我想要的。谢谢!
    【解决方案2】:

    您可能想查看Html Agility Pack

    【讨论】:

    • 谢谢,很高兴知道!
    【解决方案3】:

    只需使用WebClient.DownloadFile 方法保存文件,然后对它做任何你想做的事情。

    【讨论】:

      猜你喜欢
      • 2012-05-17
      • 2023-03-16
      • 2021-07-25
      • 1970-01-01
      • 1970-01-01
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多