我是c#的新手(之前在delphi度过了我的时间)而且我很难找到它:
网站的Html代码是:
<div class="progress-bar progress-bar-danger" id="counter" style="width: 10.%; overflow: hidden;"></div>
我想弄清楚这样:
var CheckValue = webBrowser1.Document.GetElementById("counter"); if (counter.style.width > 70%) { //code }
所以基本上我想要做的是: 我想检查网站上进度条的宽度是否填充超过70%,如果是,它将执行代码,但如果不是,它将在几秒钟后再次尝试。
如果您需要更多信息,请告诉我!
由于
答案 0 :(得分:0)
您可以使用CheckValue.Style
,它将返回包含该样式的字符串。然后,您可以使用Regex查找您要查找的内容。
您希望正则表达式匹配width:
和.%
之间的数字。您可以使用它:
width: ([0-9]+(\.[0-9]+)?)\.?%
这将匹配以width:
开头并以%
结尾的每个字符串,可能在.
之前有%
,在0到9之间至少有1个字符
您可以使用此代码获取此值:
var checkValue = webBrowser1.Document.GetElementById("counter");
Regex regex = new Regex("width: ([0-9]+(\\.[0-9]+)?)\\.?%");
Match match = regex.Match(checkValue.Style);
// Check if match found
if (match.Groups.Count > 1)
{
String s = match.Groups[1].ToString();
int width = (int)Convert.ToDouble(s);
}