Ich arbeite gerade an einem Projekt und ich lerne HAP, während ich gehe. Ich bekomme die Grundlagen und es scheint, als könnte es sehr mächtig sein.
Ich habe gerade ein Problem, ich versuche, ein Produkt auf dieser einen Website zu scrappen und die Links zu den Bildern zu bekommen, aber ich weiß nicht, wie ich den Link aus dem XPath extrahiere. Ich habe das mit Regex gemacht, was viel einfacher war, aber ich mache diesen HAP weiter.
Dies ist mein derzeitiger Code. Ich denke nicht, dass es sehr nützlich sein wird, um zu sehen, aber ich werde es auf jede Art und Weise herausbringen.
private static void HAP()
{
var url = "https://www.dhgate.com/product/brass-hexagonal-fidget-spinner-hexa-spinner/403294406.html#gw-0-4|ff8080815e03d6df015e9394cc681f8a:ff80808159abe8a5015a3fd78c5b51bb";
// HtmlWeb - A Utility class to get HTML document from http
var web = new HtmlWeb();
//Load() Method download the specified HTML document from an Internet resource.
var doc = web.Load(url);
var rootNode = doc.DocumentNode;
var divs = doc.DocumentNode.SelectNodes(String.Format("//IMG[@src='{0}']", "www.dhresource.com/webp/m/100x100/f2/albu/g5/M00/14/45/rBVaI1kWttaAI1IrAATeirRp-t8793.jpg"));
Console.WriteLine(divs);
Console.ReadLine();
}
Dies ist der Link, von dem ich kratze
Und das sollte der xPath des ersten Bildes sein.
//IMG[@src='//www.dhresource.com/webp/m/100x100s/f2-albu-g5-M00-6E-20-rBVaI1kWtmmAF9cmAANMKysq_GY926.jpg/2017-led-light-up-hand-spinners-fidget-spinner.jpg']
Ich erstelle dafür eine Hilfsmethode. Ich musste den Knoten und dann das Attribut abrufen und dann das Attribut durchlaufen, um alle Verknüpfungen zu erhalten.
private static void HAP()
{
//Declare the URL
var url = "https://www.dhgate.com/product/brass-hexagonal-fidget-spinner-hexa-spinner/403294406.html#gw-0-4|ff8080815e03d6df015e9394cc681f8a:ff80808159abe8a5015a3fd78c5b51bb";
// HtmlWeb - A Utility class to get HTML document from http
var web = new HtmlWeb();
//Load() Method download the specified HTML document from an Internet resource.
var doc = web.Load(url);
var rootNode = doc.DocumentNode;
var nodes = doc.DocumentNode.SelectNodes("//img");
foreach (var src in nodes)
{
var links = src.Attributes["src"].Value;
Console.WriteLine(links);
}
Console.ReadLine();
}