如何使用CsQuery从DOM获取javascript变量值?
<script type="text/javascript">
dealerdata = "HelloWorld"
</script>
答案 0 :(得分:2)
CsQuery只解析HTML - 而不是javascript。因此,您可以轻松地获取script
块的内容,如下所示:
CQ dom = @"<script type='text/javascript'>
dealerdata = 'HelloWorld'
</script>";
var script = dom["script"].Text();
// script == "dealerdata = 'HelloWorld'
...但是你是自己的,它是JavaScript。在你的例子中,这将是微不足道的:
string[] parts = script.Split('=');
string value = parts[1].Trim();
..但这只是因为你确切知道输入的样子。对于您不确定目标可能位于何种上下文的典型用例,这对您没有多大帮助。
如果您需要解析.NET中的Javascript,我建议使用Jurassic项目,这是一个非常棒的JavaScript编译器。如果速度至关重要,请查看javascript.net。这包含了谷歌的V8引擎,并且比侏罗纪要快得多,但是它将具有非.NET依赖性。