c# – HTMLAgilityPack选择节点选择所有元素

c# – HTMLAgilityPack选择节点选择所有元素,第1张

概述我正在C#中做一个项目,基本上是图像搜索相关游戏的图像屏幕刮板.我试图使用 HTMLAgilityPack来选择所有的图像元素并将它们放在HTMLNodeCollection中,像这样: //set up for checking autosHtmlNodeCollection imgs = new HtmlNodeCollection(doc.DocumentNode.ParentNode) 我正在C#中做一个项目,基本上是图像搜索相关游戏的图像屏幕刮板.我试图使用 HTMLAgilityPack来选择所有的图像元素并将它们放在HTMLNodeCollection中,像这样:
//set up for checking autosHTMLNodeCollection 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);}

请注意,urls是一个public List集合:

public List<string> urls = new List<string>();

我的foreach循环是抛出一个异常:

Object reference not set to an instance of an object.

检查autos,确定,imgs为null.有什么更好的方法可以追踪这个问题的根源吗?我不知道这是我的Xpath还是什么.

最令人沮丧的部分是我已经开始工作了,但弄乱了我的文件版本,失去了我的工作. DERP.

解决方法 你可能在下列行中有打字错误:
HTMLAttribute src = img.Attributes["@src"];

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

HTMLAttribute src = img.Attributes[@"src"];
总结

以上是内存溢出为你收集整理的c# – HTMLAgilityPack选择节点选择所有元素全部内容,希望文章能够帮你解决c# – HTMLAgilityPack选择节点选择所有元素所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1258905.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存