Joe*_*ack 12 .net c# html-agility-pack
我正在写一个小型的下载 - 机器人,它正在为自己搜索较低层的链接.
我需要找到的是html-Page中的所有链接(.jpg文件的链接以及.pgn,.pdf,.html,......文件的链接)
我正在使用html-agilitypack来查找所有a-href链接.
示例代码:
foreach (HtmlNode link in htmlDocument.DocumentNode.SelectNodes("//a[@href]"))
{
HtmlAttribute attribute = link.Attributes["href"];
links.Add(attribute.Value);
}
Run Code Online (Sandbox Code Playgroud)
但我也想找到数据网址.
我必须使用什么XPath语法来查找data-urls.htmlcode中的示例数据url:
<div class="cbreplay" data-url="2012\edmonton\partien.pgn"></div>
Run Code Online (Sandbox Code Playgroud)
我需要这个例子中的"2012\edmonton\partien.pgn".我如何用XPath语法实现这一点?
最好的问候,如果我犯了一些不好的错误,告诉我.这是我的第一个问题.
das*_*ash 20
以下应该做你想要的:
foreach (HtmlNode divNode in htmlDocument.DocumentNode.SelectNodes("//div[@data-url]"))
{
HtmlAttribute attribute = divNode.Attributes["data-url"];
links.Add(attribute.Value);
}
Run Code Online (Sandbox Code Playgroud)
实际上,语句//div[@data-url]应该选择具有data-url属性的所有节点.然后我们拿出这个属性.
如果除了具有此属性的div之外的节点,那么//*[@data-url]应该这样做.
| 归档时间: |
|
| 查看次数: |
9000 次 |
| 最近记录: |