klasse Antwort:
public string WebResponse(string url) //class through which i'll have link of website and will parse some divs in method of this class
{
string html = string.Empty;
try
{
HtmlDocument doc = new HtmlDocument(); //when code comes here it gives an error htmldocument.cs not found,and open window for browsing source
WebClient client = new WebClient(); // even if i put htmlWeb there it still look for HtmlWeb.cs not found
html = client.DownloadString(url); //is this from some breakpoint error coz i set only one in method where i am parsing,
doc.LoadHtml(html);
}
catch (Exception)
{
html = string.Empty;
}
return html; //please help me to remove this error using html agility pack with console application
}
Selbst wenn ich ein neues Projekt mache und Code laufe, stecke ich hier fest und ich habe auch DLL hinzugefügt, trotzdem gibt es mir diesen Fehler. Bitte hilf mir diesen Fehler zu entfernen
Dieser Fehler liegt manchmal daran, dass Sie das Nuget HTML-Agility-Paket verwenden, aktualisieren Sie Ihr nugget in der Visual Studio-Galerie und versuchen Sie dann, html agility pack zu installieren, und führen Sie es in Ihrem Projekt aus
WebResponse ist eine abstrakte Klasse, die bedeutet, dass es zuallererst ein reserviertes Wort ist. Zweitens - Um WebResponse zu verwenden, muss eine Klasse von WebResponse ie.
public class WR : WebResponse
{
//Code
}
Ebenfalls. Dein aktueller Code hat nichts mit Html Agility Pack zu tun. Wenn Sie das HTML einer Webseite in ein HtmlDocument laden wollen - gehen Sie folgendermaßen vor:
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
try{
var temp = new Uri(url);
var request = (HttpWebRequest)WebRequest.Create(temp);
request.Method = "GET";
using (var response = (HttpWebResponse)request.GetResponse())
{
using (var stream = response.GetResponseStream())
{
htmlDoc.Load(stream, Encoding.GetEncoding("iso-8859-9"));
}
}
}catch(WebException ex){
Console.WriteLine(ex.Message);
}
Um Knoten im Html-Dokument zu erhalten, müssen Sie xPath wie folgt verwenden:
HtmlNode node = htmlDoc.DocumentNode.SelectSingleNode("//body");
Console.WriteLine(node.InnerText);