webForumDet fria alternativet

Relativ till absolut url

.NET

1 svar · 206 visningar · startad av Viktor

Medlem sedan aug. 20021 752 inlägg
Frågan#1

När jag ladder ner en html fil så är finns det några absoluta url'er till bilder men några är relativa och nu söker jag någon funktion som kan konvertera en relativ url till en absolut.
Jag använder mshtml om det kankse finns någon funktion där.

/Viktor

Medlem sedan aug. 20021 752 inlägg
#2

Efter mycket letande hittade jag rätt :)

private void IE_DocumentComplete(object sender, DWebBrowserEvents2_DocumentCompleteEvent e)
{
System.Uri baseURI=new System.Uri((string)e.uRL);
mshtml.IHTMLDocument2 HTMLDocument = (mshtml.IHTMLDocument2) axIE.Document;
mshtml.IHTMLElementCollection images = HTMLDocument.images;
System.Xml.XmlUrlResolver r=new System.Xml.XmlUrlResolver();

foreach(mshtml.IHTMLImgElement ie in images)
{
	if((!ie.href.StartsWith("http://"))&&(!ie.href.StartsWith("https://")))
		ImageNode.Nodes.Add(r.ResolveUri(baseURI,ie.href).AbsolutePath);
	else
		ImageNode.Nodes.Add(ie.href);
}
}

Hoppas någon annan har nytta av denna kod :)

/Viktor

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
116 ms — ändringar (db)