C#做网页抓取的时候后台执行js
using System.Reflection;
public string GetJsString(string msg)
{
Type obj = Type.GetTypeFromProgID("ScriptControl");
if (obj == null) return null;
object ScriptControl = Activator.CreateInstance(obj);
obj.InvokeMember("Language", BindingFlags.SetProperty, null, ScriptControl, new object[] { "JavaScript" });
StringBuilder js = new StringBuilder(" function jsAction(msg){ return msg;}");
obj.InvokeMember("AddCode", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { js.ToString() });
return obj.InvokeMember("Eval", BindingFlags.InvokeMethod, null, ScriptControl, new object[] { "jsAction('"+msg+"');" }).ToString();
}