Wie verwende ich ScrapySharp, um Elemente in einem HTML-Dokument zu analysieren?

c# html html-agility-pack scrapysharp web-scraping

Frage

Hier ist der Projektleiter "Dokumentation":

https://bitbucket.org/rflechner/scrapysharp/wiki/Home


Egal, was ich versuche, ich kann die CssSelect() -Methode, die die Bibliothek hinzufügen soll, nicht finden, um die Abfrage einfacher zu machen. Hier ist, was ich versucht habe:

using ScrapySharp.Core;
using ScrapySharp.Html.Parsing;
using HtmlAgilityPack;

HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load("http://www.stackoverflow.com");

var page = doc.DocumentNode.SelectSingleNode("//body");
page.CssSel???

Genau wie benutze ich diese Bibliothek? In der Dokumentation ist nicht klar, welcher Typ html ist.

Akzeptierte Antwort

Hinzufügen

using ScrapySharp.Extensions;

Es sieht so aus, als ob du das vermisst. Das sollte CssSelect verfügbar machen.

Für den Fall, dass ein Beispiel hilft, hier ist auch eine Methode, die ich in einem Projekt verwende:

private string GetPdfUrl(HtmlDocument document, string baseUrl)
{
    return new Uri(new Uri(baseUrl), document.DocumentNode.CssSelect(".table-of-content .head-row td.download a.text-pdf").Single().Attributes["href"].Value).ToString();
}


Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum