Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.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# 带有c的HTML敏捷包#_C#_Html_Parsing_Html Agility Pack - Fatal编程技术网

C# 带有c的HTML敏捷包#

C# 带有c的HTML敏捷包#,c#,html,parsing,html-agility-pack,C#,Html,Parsing,Html Agility Pack,c#代码:` ` html代码: //< div id="heads" > <a href="/sudenur3434" data-rlt-aid="welcome_head"><img alt="" class="head" id="face_30132803" src="http://img3.ask.fm/assets2/103/548/655/872/thumb_tiny/IMG_20150513_192250.jpg" /></a

c#代码:`

` html代码:

//< div id="heads" >

      <a href="/sudenur3434" data-rlt-aid="welcome_head"><img alt="" class="head" id="face_30132803" src="http://img3.ask.fm/assets2/103/548/655/872/thumb_tiny/IMG_20150513_192250.jpg" /></a>

      <a href="/leylaulucay" data-rlt-aid="welcome_head"><img alt="" class="head" id="face_56578735" src="http://img1.ask.fm/assets2/091/364/883/712/thumb_tiny/11094711_919135961470973_149663457_njpg720960png1280963.png" /></a>
/
我想在文本框中看到以下内容

/苏丹奴3434


/leylaulucay

我在代码中添加了一行:

var node = new HtmlWeb();
var doc = node.Load("http://ask.fm/");
HtmlNode ournode = doc.DocumentNode.SelectSingleNode("//div[@id='heads']")

var val = ournode.Attributes["href"].Value;

textBox1.Text=val;
这将使您获得href属性。只需使用相同的代码获取其他节点的href值,然后将它们添加到文本框中

< div id="heads" >

  <a href="/sudenur3434" data-rlt-aid="welcome_head"><img alt="" class="head" id="face_30132803" src="http://img3.ask.fm/assets2/103/548/655/872/thumb_tiny/IMG_20150513_192250.jpg" /></a>

  <a href="/leylaulucay" data-rlt-aid="welcome_head"><img alt="" class="head" id="face_5

由于文本通常用于一行程序,因此我举一个例子,简单地在VS的直接输出窗口中写入所有链接

如果使用例如列表框而不是文本框,则可以使用例如
ListBox1.Items.Add(href.Value)

这里将为您提供div id=“heads”中所有a子级的所有href URL:


请看这里:这里:WindowsFormsApplication2.Exec中发生了类型为“System.NullReferenceException”的未处理异常。您能告诉我内部消息吗?我假设您的代码的其余部分“在调用方法之前检查以确定对象是否为null。”如何获取href中的文本?请查看我第一条评论中的链接。这就是您所需要的。我想要“heads”href。请您开始提问并回答/评论,而不仅仅是“我想要”?如果你想要详细的回复,你需要提供详细的信息。上面的代码将为您提供“heads”部门的HREF。如果这不是你想要的,那么到底是什么呢?列表框项目:/javascript:void(0)/注册javascript:void(0)javascript:void(0)javascript:void(0)/提醒/request/sudenur3434(示例)/leylaulucay(示例)ıwant..:/sudenur3434(示例)/leylaulucay(示例)我明白了;上面的代码中有一个小错误。SelectNodes(“//a”)包含所需范围之外的锚。我已将其更正为SelectNodes(“a”)。现在应该提供正确的输出。
< div id="heads" >

  <a href="/sudenur3434" data-rlt-aid="welcome_head"><img alt="" class="head" id="face_30132803" src="http://img3.ask.fm/assets2/103/548/655/872/thumb_tiny/IMG_20150513_192250.jpg" /></a>

  <a href="/leylaulucay" data-rlt-aid="welcome_head"><img alt="" class="head" id="face_5
var site = new HtmlWeb();
var htmldoc = site.Load("http://ask.fm/");

var headDiv = htmldoc.DocumentNode.SelectSingleNode("//div[@id='heads']");
if (headDiv != null)
{
    var anchors = headDiv.SelectNodes("a");
    foreach (HtmlNode aNode in anchors)
    {
        var href = aNode.Attributes.AttributesWithName("href").FirstOrDefault();
        if (href != null)
            Debug.Print(href.Value);
    }
}