屏幕刮到电子邮件与图像和CSS的完整网址

时间:2011-08-08 23:00:46

标签: asp.net asp.net-mvc screen-scraping

我正在屏幕抓取网页并将其作为html电子邮件发送。

操作html为所有图像和css文件设置完整http地址的最简单/最好的方法是什么?

当前方法类似于(手动输入)+这是非常容易出错的。

string html = rawHtml.replace("=\"", "=\"" + Request["SERVER_NAME"]);


这是我们用于使用GET筛选刮擦的当前函数

public static string WebGet(string address)
{
    string result = "";
    using (WebClient client = new WebClient())
    {
        using (StreamReader reader = new StreamReader(client.OpenRead(address)))
        {
            string s = reader.ReadToEnd();
            result = s;
        }
    }

    return result;
}

1 个答案:

答案 0 :(得分:1)

听起来你需要的是一个HTML解析器。一旦用解析器解析html字符串,就可以执行容易操作DOM的命令,因此你可以找到所有img元素,检查它们的src并在需要时附加Request [“SERVER_NAME”]。

我不在ASP中编码,但我发现了这个:

http://htmlagilitypack.codeplex.com/

这是一篇有用的文章,我发现了解释如何使用它:

http://www.4guysfromrolla.com/articles/011211-1.aspx