HTMLAgilityPack SelectNodes选择所有<img>元素

Joe*_*ski 12 html c# regex xpath html-agility-pack

我正在用C#制作一个项目,它基本上是一个用于图像搜索相关游戏的图像屏幕刮刀.我正在尝试使用HTMLAgilityPack选择所有图像元素并将它们放在HTMLNodeCollection中,如下所示:

//set up for checking autos

HtmlNodeCollection imgs = new HtmlNodeCollection(doc.DocumentNode.ParentNode);
imgs = doc.DocumentNode.SelectNodes("//img");

foreach (HtmlNode img in imgs)
{
    HtmlAttribute src = img.Attributes["@src"];
    urls.Add(src.Value);
}
Run Code Online (Sandbox Code Playgroud)

请注意,url是一个公共List集合:

public List<string> urls = new List<string>();
Run Code Online (Sandbox Code Playgroud)

我的foreach循环抛出异常:

你调用的对象是空的.

检查汽车,果然,imgs为空.有没有更好的方法来追踪这个问题的根源?我不知道这是我的Xpath还是什么.

最令人沮丧的部分是我已经让它工作了,但搞砸了我的文件版本并丢失了我的工作.DERP.

ter*_*phi 12

您可能在以下行中输入错字:

HtmlAttribute src = img.Attributes["@src"];
Run Code Online (Sandbox Code Playgroud)

我让这个为我工作(注意@位置):

HtmlAttribute src = img.Attributes[@"src"];
Run Code Online (Sandbox Code Playgroud)