1
A
回答
0
我不確定你的意思是「在樹視圖中」,但我會忽略這個域特定的部分,並告訴你如何獲得一些節點等(順便說一下:你引用的頁面似乎已經過時/錯 - 如果你想讓它得到正確的回答,請將特定的代碼片段添加到你的問題中)。
爲了簡單起見,我假定一個HTML一樣
<body>
<... some_nesting>
<div class="topic-class">
<h2>Topic Title</h2>
<... some_nesting>
<div class="category-class">
<h3>Category Title</h3>
<... some_nesting>
<a href="caption-link" class="caption-class">Caption Title</a>
</...>
<more ... />
</div>
<more ... />
</...>
</div>
<more ... />
</...>
</body>
現在,我們需要對兩兩件事的工作:
- 我們尋找什麼(識別標籤&結構)
- 我們怎麼想將我們的發現(地圖層次結構)分組
在簡單的HTML w e很容易將CSS類識別爲標識符(例如,.topic-class
,.category-class
,.caption-link
),特別是與給定的結構和標籤組合。關於分組,我們需要從主題到分類到標題。
總而言之,我們可以編寫更簡潔的LINQ或更多顯式可讀代碼來生成分組結構。爲了說明目的,我寧願選擇後者:
// document is current document returned from OpenAsync of an IBrowsingContext instance
var topics = document.QuerySelectorAll("body > .topic-class");
foreach (var topic in topics)
{
var topicTitle = topic.QuerySelector("h2")?.TextContent;
var categories = topic.QuerySelectorAll(".category-class");
foreach (var category of categories)
{
var categoryTitle = category.QuerySelector("h3")?.TextContent;
var captions = category.QuerySelectorAll("a.caption-link");
foreach (IHtmlAnchorElement caption of captions)
{
var captionTitle = caption.TextContent;
var link = caption.Href;
}
}
}
這是怎麼離開的追加主題,類別和標題給一個適當的數據容器,用於顯示它。但所有的信息都在那裏,你只需要知道你想如何使用/建模。
希望這會有所幫助!
相關問題
- 1. 樹 - 拖放節點 - 刷新?
- 2. 如何檢索由關係鏈接的所有節點
- 3. 角度 - 路由解析服務問題
- 4. 角度和節點路由
- 5. 角度問題解析浮點數
- 6. 如何獲取所有鏈接標題?
- 7. 如何選擇素數角p-樹上的所有節點?
- 8. 解析樹知道所有父節點和葉節點的祖先
- 9. 如何遍歷樹的所有節點?
- 10. 錨點href與角度路線鏈接
- 11. 如何刷新階段,當我點擊一個樹節點
- 12. ColdFusion解析所有XML子節點
- 13. PHP DOM解析所有文本節點
- 14. 解析HTML並獲取所有節點
- 15. 解析內容中的所有鏈接
- 16. 角度ui路由器解決不解決鏈接的承諾
- 17. OCaml - 解析樹中級別的節點
- 18. 如何解析JavaScript的鏈接與Java?
- 19. 如何解析HTML節點
- 20. 如何解析子節點?
- 21. 如何用jsoup解析跨度標題?
- 22. 鏈接列表節點鏈接問題
- 23. 帶節點j的角度http路由
- 24. 如何深度鏈接到由角度生成的片段ID?
- 25. .NET LINQ2XML解析XML並獲得所有節點與specifc名
- 26. 分配HTML鏈接樹節點文本
- 27. 角節點路由
- 28. WPF/Silverlight樹 - 如何使樹中的所有節點對齊?
- 29. 角度ui路由器發現刷新頁面上的問題
- 30. 如何使用量角器逐個點擊所有鏈接?