/// <summary> /// 从HTML中找到当前页面所有值为innertext的链接 /// </summary> /// <param name="cefFrame"></param> /// <param name="innerText"></param> public static List <string> GetUrlListByHapId(CefFrame cefFrame, string ElementId, string tagname, string attribute) { List <string> ls1 = new List <string>(); try { var domvisit = new Domvisi2T(); if (cefFrame == null) { return(new List <string>()); } new Thread(() => { Thread.Sleep(1000); cefFrame.GetSource(domvisit); }).Start(); LogManager.WriteLog("阻塞"); GlobalVar.IsloadOkAutoResetEvent.Reset(); LogManager.WriteLog("默认阻塞,现在等待"); GlobalVar.IsloadOkAutoResetEvent.WaitOne(); ls1 = HtmlHelper.GetHrefs(domvisit.CurrentPageHtml, ElementId, tagname, attribute); } catch (Exception e1) { LogManager.WriteLog(e1.ToString()); } return(ls1); }
/// <summary> /// 返回异步的获取html 源码的Task /// </summary> /// <param name="frame"></param> /// <param name="result"></param> /// <returns></returns> public Task ReadHtmlSourceAsyc(CefFrame frame, out string result) { this._tcs = new TaskCompletionSource <string>(); //事件回调 this._handler = (s, e) => { this._tcs.TrySetResult(e.HtmSourceCode); }; this.VistHtmlSourceCompleted += _handler; frame.GetSource(this); result = this._tcs.Task.Result; return(this._tcs.Task); }
/// <summary> /// 从HTML中找到当前页面所有值为innertext的链接 /// </summary> /// <param name="cefFrame"></param> /// <param name="innerText"></param> public static List <string> GetUrlListByHap(CefFrame cefFrame, string innerText) { //LogManager.WriteLog("{0} 释放".With(innerText)); //GlobalVar.IsloadOkAutoResetEvent.Set(); var domvisit = new Domvisi2T(); cefFrame.GetSource(domvisit); LogManager.WriteLog("{0} 默认阻塞,现在等待".With(innerText)); GlobalVar.IsloadOkAutoResetEvent.WaitOne(TimeSpan.FromSeconds(10)); LogManager.WriteLog("{0} 阻塞".With(innerText)); GlobalVar.IsloadOkAutoResetEvent.Reset(); var a1 = HtmlHelper.GetHrefs(domvisit.CurrentPageHtml, innerText); return(a1); }
public static List <string> GetInnerHtmlByHap(CefFrame cefFrame, string tagname, string attribute, string attributeValue) { var domvisit = new Domvisi2T(); if (cefFrame == null) { return(new List <string>()); } cefFrame.GetSource(domvisit); LogManager.WriteLog("默认阻塞,现在等待"); GlobalVar.IsloadOkAutoResetEvent.WaitOne(); LogManager.WriteLog("阻塞"); GlobalVar.IsloadOkAutoResetEvent.Reset(); var a1 = HtmlHelper.GetValue(domvisit.CurrentPageHtml, attributeValue, tagname, attribute); return(a1); }