我刚才问过这个问题,但我想重新说明这个问题。我正在努力为我的项目制作一个刮板。我想让它显示链接的某个部分。链接唯一改变的部分是数字。这个数字是我想要刮的。链接如下所示:awesomium web刮某些部分
<a href="/link/player.jsp?user=966354" target="_parent" "="">
如上所述,我试图仅报废链接的966354部分。我尝试了几种方法来做到这一点,但无法弄清楚。当我添加
<a href="/link/player.jsp?user="
到下面的代码它打破
List<string> player = new List<string>();
string html = webControl2.ExecuteJavascriptWithResult("document.getElementsByTagName('a')[0].innerHTML");
MatchCollection m1 = Regex.Matches(html, "<a href=\\s*(.+?)\\s*</a>", RegexOptions.Singleline);
foreach (Match m in m1)
{
string players = m.Groups[1].Value;
player.Add(players);
}
listBox.DataSource = player;
所以我删除它,就说明没有错误,直到我去运行程序,然后我得到这个错误:
“在Awesomium.Windows.Forms.dll中发生类型'System.InvalidOperationException'的未处理的异常“
所以我试了这个,它有些什么工作:
string html = webControl2.ExecuteJavascriptWithResult("document.getElementsByTagName('html')[0].innerHTML");
这段代码碎片,但不是我想要的样子,请有人伸出援助之手。
谢谢,帮助了很多 – David 2014-10-30 21:58:27
编辑,它只是坠毁与一个error:NullReferenceException未处理指向foreach – David 2014-10-30 22:06:58
如果没有合适的元素,playerNodes将为null因此,如果您有时在没有这些元素的页面上执行它,您可能需要检查它 – AlexP11223 2014-10-30 22:13:39