使用CSQuery提取图像,然后将其插入标题标记前面

时间:2014-07-06 21:38:58

标签: asp.net-mvc vb.net html5 csquery

我试图使用HTMLAgilityPack来操纵一些Html。我决定尝试CSQuery。

目标是提取和img标记并将其转换为src并将其重新插入h3标记之前。

假设html:

 <div class="col-md-6">
            <div class="item">
                <div class="content galleryItem">
                    <h3>
                        Al Shabaab kill at least 29 in latest attacks on Kenyan coast                            
                    </h3>           
                   <p> <img alt src="../../../../images/AlShabaab.jpg"></p>
<p>
    Al Shabaab killed at least 29 people in two coastal areas of Kenya.</p>

                </div>
            </div>
        </div>

目标是将img移到h3前面

我使用以下方法从img标签中删除样式attr:

   Dim csq = CQ.Create(input)
   Dim csstyle = csq("img")
   Return csstyle.RemoveAttr("style")

1 个答案:

答案 0 :(得分:1)

由于你没有明确标记这个VB.NET,我将在C#中回答,我希望没问题:

var cq = CQ.create(input); // create the CsQuery source
var img = cq["img"]; // image here, img["src"] is its source
img.Remove().InsertBefore(cq["h3"]);// remove it, and add it in front of H3.

当然这段代码可以更短,但我希望代码与您的文字说明相符。