c# - 如何从 HTML 中获取与字符串相关的数字
问题描述
在网站中,我们有这样的代码
<td>TheNumber</td>
<td>ACode</td>
<td style="width:350px;">A Special String For The Number</td>
我想创建一个用户编写字符串的应用程序,该应用程序根据字符串从网站获取“TheNumber”。
我们可以在 C# 中编写这样的应用程序吗?
解决方案
您可以使用HTML Agility Pack来操作 HTML 文档。
示例代码
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.IO;
using System.Linq;
using System.Net;
using System.Text.RegularExpressions;
using HtmlAgilityPack;
public class Program
{
public static void Main()
{
// Load
var doc = new HtmlDocument();
doc.LoadHtml(@"<td>TheNumber</td><td>ACode</td><td style='width:350px;'>A Special String For The Number</td>");
var div = doc.DocumentNode.ChildNodes.Where(t => t.InnerText == "A Special String For The Number").ToList().FirstOrDefault();
// Show info
System.Console.WriteLine(div.PreviousSibling.InnerText);
System.Console.WriteLine(div.PreviousSibling.PreviousSibling.InnerText);
}
}
推荐阅读
- javascript - 使用 javascript 更新 div 中的文本
- python - Python seaborn kdeplot 看起来与使用 R 的相同密度曲线非常不同?
- php - 为什么所有的php代码都可以解码
- angularjs - AngularJs - 在 ui-router 视图中看不到传单地图
- javascript - 如何在 html 中获取数组的所有部分?
- javascript - github 中的 Codacy 功能给了我一些我无法理解的错误
- function - Unix shell - 加载从子脚本可见的函数
- c# - 将非托管方法作为回调传递给托管 C++/CLI 类
- debugging - 如果我在调试应用程序时留下所有打印语句以供将来参考,已发布的应用程序是否有任何问题?
- sass - 在 mixin 中使用本地 Sass 变量