Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何选择具有HTMLAgility的类rel_C#_Html Agility Pack - Fatal编程技术网

C# 如何选择具有HTMLAgility的类rel

C# 如何选择具有HTMLAgility的类rel,c#,html-agility-pack,C#,Html Agility Pack,在我的代码中,我希望找到tokeydown,直到找到“Français”(或rel=1),然后停止。有人能帮我吗?谢谢。所以第一个法兰西是div节点的值。如果要搜索值为Francais的div Html节点。你应该有 while (htmldoc.DocumentNode.SelectNodes("Français") == null) { webBrowser1.Document.GetElementById("id_l

在我的代码中,我希望找到tokeydown,直到找到“Français”(或rel=1),然后停止。有人能帮我吗?谢谢。

所以第一个法兰西是div节点的值。如果要搜索值为Francais的div Html节点。你应该有

 while (htmldoc.DocumentNode.SelectNodes("Français") == null)
                {
                    webBrowser1.Document.GetElementById("id_language").Focus();

                    SendKeys.Send("{DOWN}");
                }
如果要查找属性为rel=1的div,应该有如下内容:

var divNode = htmldoc.DocumentNode.Descendants().
                       Where(x => x.Name == "div" && x.InnerText == "Français").
                       FirstOrDefault();

所以第一个法兰西是div节点的值。如果要搜索值为Francais的div Html节点。你应该有

 while (htmldoc.DocumentNode.SelectNodes("Français") == null)
                {
                    webBrowser1.Document.GetElementById("id_language").Focus();

                    SendKeys.Send("{DOWN}");
                }
如果要查找属性为rel=1的div,应该有如下内容:

var divNode = htmldoc.DocumentNode.Descendants().
                       Where(x => x.Name == "div" && x.InnerText == "Français").
                       FirstOrDefault();

这可能对你有用

var divNode = htmldoc.DocumentNode.Descendants().
                   Where(x => x.Name == "div" && x.Attributes["rel"].Value == "1").
                   FirstOrDefault();
所以你可以

var french = doc.DocumentNode.SelectSingleNode("//div[@rel]")
var relVal = french.Attributes["rel"].Value;

这可能对你有用

var divNode = htmldoc.DocumentNode.Descendants().
                   Where(x => x.Name == "div" && x.Attributes["rel"].Value == "1").
                   FirstOrDefault();
所以你可以

var french = doc.DocumentNode.SelectSingleNode("//div[@rel]")
var relVal = french.Attributes["rel"].Value;

它总是显示nullException。我想这是因为它没有从第一次。但我必须选择它,直到它出现。你们有什么想法吗?@KanasawaRamirez你们能给出产生异常的html小字符串吗?它总是显示nullException。我想这是因为它没有从第一次。但我必须选择它,直到它出现。你们有什么想法吗?@KanasawaRamirez你们能给出产生异常的html小字符串吗。