-1
我怎样才能捕捉到下载的文件的Webbrowser自动下载(如html的,PNG等).NET WebBrowser控件捕捉下载
例如,如果一个网站通过JavaScript下载一个html文件,每30秒,我怎样才能使用网页浏览器控制来捕获这个html?
我怎样才能捕捉到下载的文件的Webbrowser自动下载(如html的,PNG等).NET WebBrowser控件捕捉下载
例如,如果一个网站通过JavaScript下载一个html文件,每30秒,我怎样才能使用网页浏览器控制来捕获这个html?
我的做法会
第1步抓住脚本元素的内容(有html文件的路径变量)
//using HtmlAgilityPack
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);
//Considering first script tag (you need to check your decentands)
var script = doc.DocumentNode.Descendants()
.Where(n => n.Name == "script")
.First().InnerText;
// Return the data of the spect and stringify it into a proper JSON object
var engine = new Jurassic.ScriptEngine();
var result = engine.Evaluate("(function() { " + script + " return spects; })()");
var json = JSONObject.Stringify(engine, result);
Console.WriteLine(json);
Console.ReadKey();
第2步:在另一个网页中打开HTML页面浏览器控件或同一浏览器控件
WebBrowser wb2 = new WebBrowser();
wb2.AllowNavigation = true;
wb2.Navigate(jsVariableAsString);
步骤3:保存Web浏览器的页面
var html = wb2.DocumentText.ToString();
或wb2.ShowSaveAsDialog();
让我知道它是否有效。