1

我有一个具有 img src 和链接 href 作为相对路径的 html。我需要使用 Html Agility Pack 从相对路径移动到完整的 url 路径,例如“http://localhost:port..”。

S3 中的 src="/Expo/imagename.s3lb" href="../Etch/Exposition/...aspx?sflang=en"

有人可以告诉我一种方法吗?谢谢。

4

1 回答 1

3

我现在无法测试或运行它,但你可以尝试这样的事情:

var htmlStr = "yourhtml";
var doc = new HtmlDocument();
doc.LoadHtml(htmlStr);
var baseUri = new Uri("baseUriOfYourSite");
var images = doc.DocumentNode.SelectNodes("//img/@src").ToList();
var links = doc.DocumentNode.SelectNodes("//a/@href").ToList();
foreach (var item in images.Concat(links))
{
    item.InnerText =  new Uri(baseUri, item.InnerText).AbsoluteUri;    
}
于 2012-07-16T18:46:55.110 回答