//指令-抓取元素的值 private void command_CrawlElement(String elementID, String varX) { if (!varX.Contains("var[")) { return; } int memeryIndex = int.Parse(CodeAnalysis.getStringBetween(varX, "[", "]"));//获取变量索引 HtmlElement element; webBrowser_MainWeb.Invoke(new MethodInvoker(delegate { try { element = webBrowser_MainWeb.Document.GetElementById(CodeAnalysis.getStringBefore(elementID, '.')); //检查元素的父元素和子元素 element = CodeAnalysis.WebElementCommand.getRelation(element, elementID); varMemery[memeryIndex] = element.GetAttribute("value").ToString(); } catch (Exception e) { richTextBox_ApplicationInfo.Invoke(new MethodInvoker(delegate { richTextBox_ApplicationInfo.AppendText(e.ToString() + "\n"); })); } })); }
//指令-设置页面元素值 private void command_SetElementValue(String elementID, String value) { try { HtmlElement element; webBrowser_MainWeb.Invoke(new MethodInvoker(delegate { try { element = webBrowser_MainWeb.Document.GetElementById(CodeAnalysis.getStringBefore(elementID, '.')); //检查元素的父元素和子元素 element = CodeAnalysis.WebElementCommand.getRelation(element, elementID); if (!value.Contains("var[")) { element.SetAttribute("value", value);//给元素赋值 } else { int temp_index = int.Parse(CodeAnalysis.getStringBetween(value, "[", "]")); element.SetAttribute("value", varMemery[temp_index]); } }catch (Exception e) { richTextBox_ApplicationInfo.Invoke(new MethodInvoker(delegate { richTextBox_ApplicationInfo.AppendText(e.ToString() + "\n"); })); } })); }catch (Exception e) { richTextBox_ApplicationInfo.Invoke(new MethodInvoker(delegate { richTextBox_ApplicationInfo.AppendText(e.ToString() + "\n"); })); } }
//指令-设置CheckBox元素选中 private void command_SetCheckBoxValue(String elementID, String value) { HtmlElement element; webBrowser_MainWeb.Invoke(new MethodInvoker(delegate { try { element = webBrowser_MainWeb.Document.GetElementById(CodeAnalysis.getStringBefore(elementID, '.')); //检查元素的父元素和子元素 element = CodeAnalysis.WebElementCommand.getRelation(element, elementID); element.SetAttribute("Checked", value);//设置CheckBox } catch (Exception e) { richTextBox_ApplicationInfo.Invoke(new MethodInvoker(delegate { richTextBox_ApplicationInfo.AppendText(e.ToString() + "\n"); })); } })); }
//指令-点击页面元素 private void command_ClickElement(String elementID) { HtmlElement element; webBrowser_MainWeb.Invoke(new MethodInvoker(delegate { try { element = webBrowser_MainWeb.Document.GetElementById(CodeAnalysis.getStringBefore(elementID, '.')); //检查元素的父元素和子元素 element = CodeAnalysis.WebElementCommand.getRelation(element, elementID); element.InvokeMember("Click"); } catch (Exception e) { richTextBox_ApplicationInfo.Invoke(new MethodInvoker(delegate { richTextBox_ApplicationInfo.AppendText(e.ToString() + "\n"); })); } })); }