Wybierz wszystkie <p> 'z potomków węzła za pomocą HTMLAgilityPack
Mam następujący kod, którego używam do pobrania strony html. Utwórz adresy URL bezwzględne, a następnie utwórz odnośniki rel nofollow i otwórz w nowym oknie / zakładce. Moim problemem jest dodanie atrybutów do<a>
s.
string url = "http://www.mysite.com/";
string strResult = "";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if ((request.HaveResponse) && (response.StatusCode == HttpStatusCode.OK)) {
using (StreamReader sr = new StreamReader(response.GetResponseStream())) {
strResult = sr.ReadToEnd();
sr.Close();
}
}
HtmlDocument ContentHTML = new HtmlDocument();
ContentHTML.LoadHtml(strResult);
HtmlNode ContentNode = ContentHTML.GetElementbyId("content");
foreach (HtmlNode node in ContentNode.SelectNodes("/a")) {
node.Attributes.Append("rel", "nofollow");
node.Attributes.Append("target", "_blank");
}
return ContentNode.WriteTo();
Czy ktoś widzi, co robię źle? Próbowałem tu przez jakiś czas bez powodzenia. Ten kod pojawia się, że ContentNode.SelectNodes ("/ a") nie jest ustawiony na wystąpienie obiektu. Chciałbym spróbować ustawić parę na 0?
Pozdrawiam, Denis