使用总结

来源:互联网 发布:企业海关数据免费查询 编辑:程序博客网 时间:2024/05/18 01:30

1、网页

http://网址1?service=网址2    作用,网址一加载过跳转到网址2

2、C# 打开指定的网站

WebBrowser.Navigate(http://网址);

3、网页版模拟点击

        /// <summary>
        /// 点击作废按钮
        /// </summary>
        /// <param name="doc"></param>
        /// <param name="auto"></param>
        private static void ClickCancel(HtmlDocument doc, Auto auto)
        {
            HtmlElement item = getElementBytext(doc, "a", "作 废");
            if (item != null)
            {
                item.InvokeMember("click");
            }
        }

4、获取元素

        /// <summary>
        /// 根据标签和txt获取元素
        /// </summary>
        /// <param name="doc">文档</param>
        /// <param name="tag">tag</param>
        /// <param name="txt">txt值</param>
        /// <returns></returns>
        public static HtmlElement getElementBytext(HtmlDocument doc, string tag, string txt)
        {
            HtmlElementCollection collection = doc.GetElementsByTagName(tag);
            foreach (HtmlElement item in collection)
            {
                if (item.InnerText != null && item.InnerText.Contains(txt))
                {
                    return item;
                }
            }
            return null;
        }

5、不使用office组件操作excel 用aspose 或者openxml,表格控件可用farpoint

Aspose.Cells是一个广受赞誉的电子表格组件,支持所有Excel格式类型的操作,用户无需依靠Microsoft Excel也可为其应用程序嵌入读写和处理Excel数据表格的功能。Aspose.Cells可以导入和导出每一个具体的数据,表格和格式,在各个层面导入图像,应用复杂的计算公式,并将Excel的数据保存为各种格式等等---完成所有的这一切功能都无需使用Microsoft Excel 和Microsoft Office Automation。

6、下载网页文档 HtmlAgilityPack动态库

  var doc = new HtmlDocument();
            doc.LoadHtml(html);
            var sbh = doc.DocumentNode.SelectSingleNode("//*[@id='hall_nsrsbh']")?.InnerText;

7、操作json, Newtonsoft.Json.Net20 程序集

8、模拟点击辅助动态库,AutoItX3.Assembly.dll

9、webbroswer防止在窗体外打开网站

        ///<summary>
        /// WebBrowser新建窗口使不弹出新窗体,在webbroswer中加载
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void WebBrowser_NewWindow(object sender, CancelEventArgs e)
        {
            //防止弹窗
            e.Cancel = true;
            if (currentStep == 2)
            {
                this.webBrowser.Url = new Uri(http://网址);
            }
        }


原创粉丝点击