private void DownloadSoft() { Gather.cGatherWeb gData = new Gather.cGatherWeb(); //增加采集的标志 Task.cWebpageCutFlag c; c = new Task.cWebpageCutFlag(); c.id = 0; c.Title = "版本"; c.DataType = (int)cGlobalParas.GDataType.File; c.StartPos = "<a href=\""; c.EndPos = "\""; c.LimitSign = (int)cGlobalParas.LimitSign.NoLimit; gData.CutFlag.Add(c); c = null; DataTable dGather = gData.GetGatherData("http://www.yijie.net/user/soft/updatesoukey.html", cGlobalParas.WebCode.utf8, "", "", "", Program.getPrjPath(), false); dGather = null; gData = null; m_sender.BeginInvoke(m_senderDelegate, new object[] { true }); }
private void DownloadSoft() { Gather.cGatherWeb gData = new Gather.cGatherWeb(); //���Ӳɼ��ı�־ Task.cWebpageCutFlag c; c = new Task.cWebpageCutFlag(); c.id = 0; c.Title = "�汾"; c.DataType = (int)cGlobalParas.GDataType.File; c.StartPos = "<a href=\""; c.EndPos = "\""; c.LimitSign = (int)cGlobalParas.LimitSign.NoLimit; gData.CutFlag.Add(c); c = null; DataTable dGather = gData.GetGatherData("http://www.yijie.net/user/soft/updatesoukey.html", cGlobalParas.WebCode.utf8, "", "", "", Program.getPrjPath(),false); dGather = null; gData = null; m_sender.BeginInvoke(m_senderDelegate, new object[] { true }); }
private bool SaveTask(string TaskPath) { Task.cTask t = new Task.cTask(); //����DZ༭״̬������Ҫɾ��ԭ���ļ� if (this.FormState == cGlobalParas.FormState.Edit) { t.TaskName = this.tTask.Text; if (this.comTaskClass.SelectedIndex == 0) { try { //ɾ��ԭ���������ҪĿ����Ϊ�˱��ݣ������������������� t.DeleTask("", this.tTask.Text); } catch (System.Exception) { } } else { //��ȡ����������·�� Task.cTaskClass tClass = new Task.cTaskClass(); string tPath = tClass.GetTaskClassPathByName(this.comTaskClass.SelectedItem.ToString()); try { //ɾ��ԭ���������ҪĿ����Ϊ�˱��ݣ������������������� t.DeleTask(tPath, this.tTask.Text); } catch (System.Exception) { } } } int i = 0; int UrlCount = 0; //�������� //�½�һ������ t.New(); t.TaskName = this.tTask.Text; t.TaskDemo = this.txtTaskDemo.Text; if (this.comTaskClass.SelectedIndex == 0) { t.TaskClass = ""; } else { t.TaskClass = this.comTaskClass.SelectedItem.ToString(); } t.TaskType = cGlobalParas.ConvertID(this.TaskType.SelectedItem.ToString()).ToString(); t.RunType = cGlobalParas.ConvertID(this.comRunType.SelectedItem.ToString()).ToString(); if (this.txtSavePath.Text.Trim().ToString() == "") t.SavePath = Program.getPrjPath() + "data"; else t.SavePath = this.txtSavePath.Text; t.ThreadCount = int.Parse(this.udThread.Value.ToString()); t.StartPos = this.txtStartPos.Text; t.EndPos = this.txtEndPos.Text; t.DemoUrl = this.txtWeblinkDemo.Text; t.Cookie = this.txtCookie.Text; t.WebCode = cGlobalParas.ConvertID(this.comWebCode.SelectedItem.ToString()).ToString(); t.IsLogin = this.IsLogin.Checked; t.LoginUrl = this.txtLoginUrl.Text; t.IsUrlEncode = this.IsUrlEncode.Checked; if (this.IsUrlEncode.Checked == false) { t.UrlEncode = ""; } else { t.UrlEncode = cGlobalParas.ConvertID(this.comUrlEncode.SelectedItem.ToString()).ToString(); } //�ж��Ƿ��ļ����洢������������Ϣ if (this.comRunType.SelectedIndex == 0) { if (this.raExportTxt.Checked == true) { t.ExportType = ((int)cGlobalParas.PublishType.PublishTxt).ToString(); } else if (this.raExportExcel.Checked == true) { t.ExportType = ((int)cGlobalParas.PublishType.PublishExcel).ToString(); } else if (this.raExportAccess.Checked == true) { t.ExportType = ((int)cGlobalParas.PublishType.PublishAccess).ToString(); } else if (this.raExportMSSQL.Checked == true) { t.ExportType = ((int)cGlobalParas.PublishType.PublishMSSql).ToString(); } else if (this.raExportMySql.Checked == true) { t.ExportType = ((int)cGlobalParas.PublishType.PublishMySql).ToString(); } else if (this.raExportWeb.Checked == true) { t.ExportType = ((int)cGlobalParas.PublishType.PublishWeb).ToString(); } t.ExportFile = this.txtFileName.Text.ToString(); t.DataSource = this.txtDataSource.Text.ToString(); t.DataTableName = this.comTableName.Text.ToString(); t.InsertSql = this.txtInsertSql.Text; t.ExportUrl = this.txtExportUrl.Text; t.ExportUrlCode = cGlobalParas.ConvertID(this.comExportUrlCode.SelectedItem.ToString()).ToString(); t.ExportCookie = this.txtExportCookie.Text; } else { t.ExportFile = ""; t.DataSource = ""; t.ExportType = ((int)cGlobalParas.PublishType.NoPublish).ToString(); t.DataSource = ""; t.DataTableName = ""; } //��ʼ�洢��������Ϣ t.GatherAgainNumber = int.Parse(this.udAgainNumber.Value.ToString()); t.IsIgnore404 = this.IsIgnore404.Checked; t.IsExportHeader = this.IsIncludeHeader.Checked; t.IsDelRepRow = this.IsDelRepRow.Checked; t.IsErrorLog = this.IsSaveErrorLog.Checked; t.IsTrigger = this.IsStartTrigger.Checked; if (this.raGatheredRun.Checked == true) t.TriggerType = ((int)cGlobalParas.TriggerType.GatheredRun).ToString(); else if (this.raPublishedRun.Checked == true) t.TriggerType = ((int)cGlobalParas.TriggerType.PublishedRun).ToString(); cTriggerTask tt; //��ʼ��Ӵ�����ִ�е����� for (i = 0; i < this.listTask.Items.Count; i++) { tt = new cTriggerTask(); tt.RunTaskType = cGlobalParas.ConvertID(this.listTask.Items[i].Text); if (cGlobalParas.ConvertID(this.listTask.Items[i].Text) == (int)cGlobalParas.RunTaskType.DataTask) tt.RunTaskName = cGlobalParas.ConvertID(this.listTask.Items[i].SubItems[1].Text.ToString()).ToString(); else tt.RunTaskName = this.listTask.Items[i].SubItems[1].Text.ToString(); tt.RunTaskPara = this.listTask.Items[i].SubItems[2].Text.ToString(); t.TriggerTask.Add(tt); } for (i = 0; i < this.listWeblink.Items.Count; i++) { UrlCount += int.Parse(this.listWeblink.Items[i].SubItems[4].Text); } t.UrlCount = UrlCount; Task.cWebLink w; for (i = 0; i < this.listWeblink.Items.Count; i++) { w = new Task.cWebLink(); w.id = i; w.Weblink = this.listWeblink.Items[i].Text; if (this.listWeblink.Items[i].SubItems[1].Text == "N") { w.IsNavigation = false; } else { w.IsNavigation = true; //��ӵ������� for (int m = 0; m < m_listNaviRules.Count; m++) { if (m_listNaviRules[m].Url == this.listWeblink.Items[i].Text) { w.NavigRules = m_listNaviRules[m].NavigRule; break; } } } if (this.listWeblink.Items[i].SubItems[3].Text == "" || this.listWeblink.Items[i].SubItems[3].Text == null) { w.IsNextpage = false; } else { w.IsNextpage = true; w.NextPageRule = this.listWeblink.Items[i].SubItems[3].Text; } t.WebpageLink.Add(w); w = null; } Task.cWebpageCutFlag c; for (i = 0; i < this.listWebGetFlag.Items.Count; i++) { c = new Task.cWebpageCutFlag(); c.id = i; c.Title = this.listWebGetFlag.Items[i].Text; c.DataType = cGlobalParas.ConvertID(this.listWebGetFlag.Items[i].SubItems[1].Text); c.StartPos = this.listWebGetFlag.Items[i].SubItems[2].Text; c.EndPos = this.listWebGetFlag.Items[i].SubItems[3].Text; c.LimitSign = cGlobalParas.ConvertID(this.listWebGetFlag.Items[i].SubItems[4].Text); try { c.RegionExpression = this.listWebGetFlag.Items[i].SubItems[5].Text; c.ExportLimit = cGlobalParas.ConvertID(this.listWebGetFlag.Items[i].SubItems[6].Text); c.ExportExpression = this.listWebGetFlag.Items[i].SubItems[7].Text; } catch (System.Exception) { //��������������1.0�汾 } t.WebpageCutFlag.Add(c); c = null; } t.Save(TaskPath); t = null; return true; }
private void GatherData() { if (this.listWeblink.Items.Count == 0) { MessageBox.Show(rm.GetString ("Info3"), rm.GetString("MessageboxInfo"), MessageBoxButtons.OK, MessageBoxIcon.Information); this.tabControl1.SelectedTab = this.tabControl1.TabPages[1]; return ; } if (this.listWebGetFlag.Items.Count == 0) { MessageBox.Show(rm.GetString ("Info4"), rm.GetString("MessageboxInfo"), MessageBoxButtons.OK, MessageBoxIcon.Information); this.tabControl1.SelectedTab = this.tabControl1.TabPages[2]; return ; } //���Բɼ��������û���������ݲ��Բɼ� //��֤�����Ƿ���ȷ //�Ȳ��������п�������һ���е���һ��ҳ�������� //�ж��Ƿ��Ѿ���ȡ��ʾ����ַ�����û�У��������ȡ if (this.txtWeblinkDemo.Text.ToString() == null || this.txtWeblinkDemo.Text.ToString() == "") { GetDemoUrl(); } this.tabControl1.SelectedTab = this.tabControl1.TabPages[4]; Application.DoEvents(); //���Ӳɼ��ı�־ cWebpageCutFlag c; List<cWebpageCutFlag> gFlag = new List<cWebpageCutFlag>(); for (int i = 0; i < this.listWebGetFlag.Items.Count; i++) { c = new Task.cWebpageCutFlag(); c.id = i; c.Title = this.listWebGetFlag.Items[i].Text; c.DataType = cGlobalParas.ConvertID(this.listWebGetFlag.Items[i].SubItems[1].Text); c.StartPos = this.listWebGetFlag.Items[i].SubItems[2].Text; c.EndPos = this.listWebGetFlag.Items[i].SubItems[3].Text; c.LimitSign = cGlobalParas.ConvertID(this.listWebGetFlag.Items[i].SubItems[4].Text); c.RegionExpression = this.listWebGetFlag.Items[i].SubItems[5].Text; c.ExportLimit = cGlobalParas.ConvertID(this.listWebGetFlag.Items[i].SubItems[6].Text); c.ExportExpression = this.listWebGetFlag.Items[i].SubItems[7].Text; gFlag.Add(c); c = null; } string tmpSavePath = this.txtSavePath.Text.ToString() + "\\" + this.tTask.Text.ToString() + "_file"; bool IsAjax = false; if (cGlobalParas.ConvertID(this.TaskType.SelectedItem.ToString()) == (int)cGlobalParas.TaskType.AjaxHtmlByUrl) IsAjax = true; //����һ���ķ������Ƶ�ί�� delegateGData sd = new delegateGData(this.GatherTestData); //��ʼ���ú���,���Դ����� IAsyncResult ir = sd.BeginInvoke(this.txtWeblinkDemo.Text.ToString(),gFlag, (cGlobalParas.WebCode)cGlobalParas.ConvertID(this.comWebCode.SelectedItem.ToString()), this.txtCookie.Text.ToString(), this.txtStartPos.Text.ToString(), this.txtEndPos.Text.ToString(), tmpSavePath, IsAjax,null, null); //��ʾ�ȴ��Ĵ��� frmWaiting fWait = new frmWaiting(rm.GetString ("Info5")); fWait.Text = rm.GetString("Info5"); fWait.Show(this); //ˢ������ȴ��Ĵ��� Application.DoEvents(); //ѭ������Ƿ�������첽�IJ��� while (true) { if (ir.IsCompleted) { //����˲�����رմ��� fWait.Close(); break; } } //ȡ�����ķ���ֵ DataTable retValue = sd.EndInvoke(ir); //����ʾ��DataGrid�� this.dataTestGather.DataSource = retValue; }
private void GetCopy() { Gather.cGatherWeb gData = new Gather.cGatherWeb(); this.textBox1.Text =rm.GetString ("Info90"); Application.DoEvents(); Old_Copy = Assembly.GetExecutingAssembly().GetName().Version.ToString(); this.textBox1.Text += "\r\n" + rm.GetString("Info91") + Assembly.GetExecutingAssembly().GetName().Version; Application.DoEvents(); this.textBox1.Text += "\r\n" + rm.GetString("Info92"); Application.DoEvents(); SCode = cTool.GetHtmlSource("http://www.yijie.net/user/soft/updatesoukey.html", true); if (SCode == "" || SCode == null) { this.textBox1.Text += "\r\n" + rm.GetString("Info93") + "\r\n" + rm.GetString("Info94"); Application.DoEvents(); return; } this.textBox1.Text += "\r\n" + rm.GetString("Info95") + "\r\n" + rm.GetString("Info96"); Application.DoEvents(); //���Ӳɼ��ı�־ Task.cWebpageCutFlag c; c = new Task.cWebpageCutFlag(); c.id =0; c.Title = "�汾"; c.DataType =(int) cGlobalParas.GDataType.Txt; c.StartPos = "�汾��"; c.EndPos = "</p>"; c.LimitSign =(int) cGlobalParas.LimitSign.NoLimit; gData.CutFlag.Add(c); c = null; //���Ӱ汾˵���ı�־ c = new Task.cWebpageCutFlag(); c.id = 1; c.Title = "˵��"; c.DataType = (int)cGlobalParas.GDataType.Txt; c.StartPos = "˵����"; c.EndPos = "</p>"; c.LimitSign = (int)cGlobalParas.LimitSign.NoLimit; gData.CutFlag.Add(c); c = null; DataTable dGather = gData.GetGatherData("http://www.yijie.net/user/soft/updatesoukey.html", cGlobalParas.WebCode.utf8, "", "", "", Program.getPrjPath(),false); New_Copy = dGather.Rows[0][0].ToString(); this.textBox1.Text += "\r\n" + rm.GetString("Info97") + New_Copy; Application.DoEvents(); ///�汾�űȽ���Ҫ�Ƚ��������00.00.00�����а汾�������մ˸�ʽ���������ִ��� ///�Ƚ�˳��Ϊ�����汾->�Ͱ汾��ֻҪ��һ���°汾�Ŵ��ھɰ汾�ţ���ͽ����������� int Old_V; int New_V; for (int i = 0; i < 3; i++) { Old_V=int.Parse ( Old_Copy .Substring(0,Old_Copy .IndexOf ("."))); Old_Copy =Old_Copy .Substring (Old_Copy .IndexOf (".")+1,Old_Copy .Length -Old_Copy .IndexOf (".")-1); New_V = int.Parse(New_Copy.Substring(0, New_Copy.IndexOf("."))); New_Copy = New_Copy.Substring(New_Copy.IndexOf(".")+1, New_Copy.Length - New_Copy.IndexOf(".")-1); if (New_V >Old_V ) { this.textBox1.Text += "\r\n" + rm.GetString("Info98"); Application.DoEvents(); this.textBox1.Text += "\r\n" + dGather.Rows [0][1].ToString (); Application.DoEvents(); gData = null; this.button2.Enabled = true; this.button1.Enabled = true; return; } } this.textBox1.Text += "\r\n" + rm.GetString("Info99"); Application.DoEvents(); this.button1.Enabled = true; }
private void GetCopy() { Gather.cGatherWeb gData = new Gather.cGatherWeb(); this.textBox1.Text = rm.GetString("Info90"); Application.DoEvents(); Old_Copy = Assembly.GetExecutingAssembly().GetName().Version.ToString(); this.textBox1.Text += "\r\n" + rm.GetString("Info91") + Assembly.GetExecutingAssembly().GetName().Version; Application.DoEvents(); this.textBox1.Text += "\r\n" + rm.GetString("Info92"); Application.DoEvents(); SCode = cTool.GetHtmlSource("http://www.yijie.net/user/soft/updatesoukey.html", true); if (SCode == "" || SCode == null) { this.textBox1.Text += "\r\n" + rm.GetString("Info93") + "\r\n" + rm.GetString("Info94"); Application.DoEvents(); return; } this.textBox1.Text += "\r\n" + rm.GetString("Info95") + "\r\n" + rm.GetString("Info96"); Application.DoEvents(); //增加采集的标志 Task.cWebpageCutFlag c; c = new Task.cWebpageCutFlag(); c.id = 0; c.Title = "版本"; c.DataType = (int)cGlobalParas.GDataType.Txt; c.StartPos = "版本:"; c.EndPos = "</p>"; c.LimitSign = (int)cGlobalParas.LimitSign.NoLimit; gData.CutFlag.Add(c); c = null; //增加版本说明的标志 c = new Task.cWebpageCutFlag(); c.id = 1; c.Title = "说明"; c.DataType = (int)cGlobalParas.GDataType.Txt; c.StartPos = "说明:"; c.EndPos = "</p>"; c.LimitSign = (int)cGlobalParas.LimitSign.NoLimit; gData.CutFlag.Add(c); c = null; DataTable dGather = gData.GetGatherData("http://www.yijie.net/user/soft/updatesoukey.html", cGlobalParas.WebCode.utf8, "", "", "", Program.getPrjPath(), false); New_Copy = dGather.Rows[0][0].ToString(); this.textBox1.Text += "\r\n" + rm.GetString("Info97") + New_Copy; Application.DoEvents(); ///版本号比较需要比较三个界别:00.00.00,所有版本必须遵照此格式,否则会出现错误。 ///比较顺序为:主版本->低版本,只要有一个新版本号大于旧版本号,则就进行升级操作 int Old_V; int New_V; for (int i = 0; i < 3; i++) { Old_V = int.Parse(Old_Copy.Substring(0, Old_Copy.IndexOf("."))); Old_Copy = Old_Copy.Substring(Old_Copy.IndexOf(".") + 1, Old_Copy.Length - Old_Copy.IndexOf(".") - 1); New_V = int.Parse(New_Copy.Substring(0, New_Copy.IndexOf("."))); New_Copy = New_Copy.Substring(New_Copy.IndexOf(".") + 1, New_Copy.Length - New_Copy.IndexOf(".") - 1); if (New_V > Old_V) { this.textBox1.Text += "\r\n" + rm.GetString("Info98"); Application.DoEvents(); this.textBox1.Text += "\r\n" + dGather.Rows [0][1].ToString(); Application.DoEvents(); gData = null; this.button2.Enabled = true; this.button1.Enabled = true; return; } } this.textBox1.Text += "\r\n" + rm.GetString("Info99"); Application.DoEvents(); this.button1.Enabled = true; }