Ich versuche den niedrigsten Preis auf Amazon-Seiten zu finden. Lassen Sie uns diese URL als Beispiel verwenden:
http://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=9963BB#/ref=nb_sb_noss?url=search-alias%3Daps&field-keywords=E999-4701&rh=i%3Aaps%2Ck%3AE999-4701
Ich möchte den niedrigsten Preis finden ... die Nummer rechts von "neu von".
Folgendes habe ich versucht:
using (TextWriter tw = new StreamWriter(@"D:\AmazonUrls.txt"))
{
foreach (string item in list)
{
var webGet = new HtmlWeb();
var document = webGet.Load(item);
var lowestPrice = document.DocumentNode.SelectSingleNode("//span[@id='subPrice']");
if (lowestPrice != null)
{
Console.WriteLine(lowestPrice);
}
}
}
Ich bekomme kein Ergebnis. Wo gehe ich falsch?
Sie fragen nach Knoten mit der id
subPrice", aber tatsächlich hat die class
subPrice":
<span class="subPrice">
<a href="http://www.amazon.com/gp/offer-listing/B001BA0W06/ref=sr_1_6_olp?ie=UTF8&qid=1334090832&sr=8-6&condition=new">5 new</a>
from <span class="price">$245.90</span></span>
so,
var lowestPrice = document.DocumentNode.SelectSingleNode("//span[@class='subPrice']");
sollten Sie bekommen, was Sie wollen. Die Beispielseite, die Sie angeben, enthält jedoch mehrere Knoten, die mit diesem Muster übereinstimmen. Daher möchten Sie möglicherweise mehrere Knoten auswählen und diese dann durchlaufen, um zu entscheiden, welche die niedrigsten Berechtigungen haben.