AngleSharp 实战(04)之遍历内部超链接(a)元素的 Href 和 InnerText
2024-08-30 01:52:05
文档地址:https://anglesharp.github.io/docs/Examples.html
直接贴代码了:
using System;
using System.Linq;
using System.Threading.Tasks;
using AngleSharp;
using AngleSharp.Dom;
using AngleSharp.Html.Parser; namespace AngleSharpSamples
{
class Program
{
static async Task Main(string[] args)
{
var config = Configuration.Default.WithDefaultLoader();
var address = "https://www.cnblogs.com";
var context = BrowsingContext.New(config);
var document = await context.OpenAsync(address);
var cellSelector = "div.post_item";
IHtmlCollection<IElement> cells = document.QuerySelectorAll(cellSelector);
int i = ;
foreach (IElement postElemItem in cells)
{
IElement postTitleElemItem = postElemItem.QuerySelector("a.titlelnk");
//如果元素不存在,则 postTitleElemItem = null
if (postTitleElemItem == null)
{
continue;
}
i++;
string title = postTitleElemItem.TextContent.TryTrim();
string href = null;
if (postTitleElemItem.HasAttribute("href"))
{
href = postTitleElemItem.GetAttribute("href").TryTrim();
}
Console.WriteLine("{0}. {1} ( {2} )", i, title, href);
} Console.WriteLine("{0}", Environment.NewLine);
}
}
}
谢谢浏览!
最新文章
- 【记录】VS2012新建MVC3/MVC4项目时,报:此模板尝试加载组件程序集“NuGet.VisualStudio.Interop...”
- mongostat用法
- 基于吉日嘎底层架构的Web端权限管理操作演示-日志管理
- iOS开发之如何修改Mac截屏保存路径
- [AngularJS] Accessing Services from Console
- 第一个java程序
- DBNull
- 【剑指offer】复制的复杂链条
- AngularJS–Scope(作用域)
- java多线程编程核心技术——第七章补漏拾遗
- Android 自定义View -- 简约的折线图
- Mac OS X 简单的方法知道何时来电了
- 对 Undefined 与 Null 的一些理解
- vue 深拷贝
- 业务开发(二)—— Spring框架
- jdom使用入门及namespace注意事项【原】
- 【Mac AndroidStudio】download gradle fail问题
- HTTP进阶学习笔记
- 快速搭建BIND服务,并实现解析
- maven项目有红叉,感叹号如何解决?