gpt4 book ai didi

c# - Html Agility Pack - 如何选择正确的跨度类

转载 作者:行者123 更新时间:2023-11-30 15:04:33 25 4
gpt4 key购买 nike

我正在尝试在 Amazon 页面上找到最低价格。让我们以这个 url 为例:

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

我想找到最低价...“new from”右边的数字。

这是我尝试过的:

        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);
}

}
}

我没有得到任何结果。我哪里错了?

最佳答案

您正在请求具有 subPrice 的 id 的节点,但实际上是 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>

所以,

var lowestPrice = document.DocumentNode.SelectSingleNode("//span[@class='subPrice']");

应该能得到你想要的。但是,您提供的示例页面有多个节点与该模式匹配,因此您可能想选择多个节点,然后循环遍历它们以决定哪个节点具有最低的权限。

关于c# - Html Agility Pack - 如何选择正确的跨度类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10096181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com