更改src属性
问题描述:
我必须解析电子邮件的html,获取所有img标签,并用我想要的图像的URL替换src值。更改src属性<img>
这部分已经完成。我可以访问<img>
并使用我想要的网址更改属性。
问题是,当我打印html的src等于cid:companylogo
,它应该是我给的图像的完整url。
我需要知道如何在原始html中的<img>
的src值发生更改后加载html。下面的代码作为参数接收电子邮件的原始HTML中的字符串正如你在你的评论指出,这是“体”
string SRC = "";
int indice = 0;
//Console.WriteLine(body);
HtmlDocument email = new HtmlDocument();
email.LoadHtml(body);
foreach (HtmlNode img in email.DocumentNode.SelectNodes("//img"))
{
SRC = img.GetAttributeValue("src", null);
for (int i = 0; i < contentIDS.Count; i++)
{
if (SRC.Equals(contentIDS[i]))
{
indice = i;
break;
}
}
img.SetAttributeValue("src", urls[indice].ToString());//change src value
Console.WriteLine("URL" + img.GetAttributeValue("src", null));//its printed how i want to
}
body = item.Body;//am stuck here i want body to have a final value of the whole html but with the changes made in src above.
return body;
答
,您使用的是item
变量也通过了 - 不过,这ISN你在操纵什么。
相反的:
body = item.Body;
你应该使用:
body = email.Body;
更新:
既然你现在已经显露出来,你正在使用的HAP,你可以简单地得到的内部HTML文档节点。
未经测试:
body = email.DocumentNode.InnerHtml;
什么是你指的是在该行返回前的'item'变量? – Oded 2012-02-21 17:08:36
其收到的也作为一个参数调用此函数是在这个块内:foreach(在findResults.Items项目项目) – rdk1992 2012-02-21 17:11:19
点是我不知道如何访问的HTML内容,遭受改变的src值的
–
rdk1992
2012-02-21 17:12:23