From b20a34e8277267124f9708c2c97e92ed1052fa08 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期六, 12 十一月 2022 14:43:48 +0800
Subject: [PATCH] 自动抓取中标项目

---
 zhengcaioa/Crawler/sichuan/sichuanoperation.cs |  301 +++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 237 insertions(+), 64 deletions(-)

diff --git a/zhengcaioa/Crawler/sichuan/sichuanoperation.cs b/zhengcaioa/Crawler/sichuan/sichuanoperation.cs
index b8008f6..5ce1381 100644
--- a/zhengcaioa/Crawler/sichuan/sichuanoperation.cs
+++ b/zhengcaioa/Crawler/sichuan/sichuanoperation.cs
@@ -1,22 +1,26 @@
-锘縰sing Newtonsoft.Json;
+锘縰sing AngleSharp.Html.Parser;
+using DTO;
+using Newtonsoft.Json;
 using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Net.Http;
 using System.Net.Http.Headers;
 using System.Text;
+using System.Threading;
 using zhengcaioa.Models;
 
 namespace Crawler.sichuan
 {
    public class sichuanoperation
     {
-        public static void operations(WebCrawlerContext _ccontext)
+        
+        public static string sichuanpageurll = "https://zfcg.scsczt.cn";
+        public static void operations(WebCrawlerContext _ccontext, zhengcaioaContext _ccontext1)
         {
             try
             {
-                string api_domain = "http://192.168.0.116:9200";
-                string pageurll = "https://zfcg.scsczt.cn";
+               
                 //鑾峰彇鏇存柊鏃堕棿
                 string operationStartTime = "";
                 Updatetime updatetime = _ccontext.Updatetimes.Where(x=>x.Sheng=="鍥涘窛鐪�").FirstOrDefault();
@@ -40,9 +44,10 @@
                 int currPage = 1;
                 int pageSize = 10;
                 //寮�濮嬭闂� 閲囪喘鍏憡
-                logg.WriteLog("鍥涘窛鐪侀噰璐叕鍛� 寮�濮嬭幏鍙�");
+                logg.WriteLog("鍥涘窛鐪侀噰璐叕鍛� 寮�濮嬭幏鍙�", "鍥涘窛");
                 while (true)
                 {
+                    logg.WriteLog(currPage.ToString(), "鍥涘窛");
                     string address = "https://zfcg.scsczt.cn/freecms/rest/v1/notice/selectInfoMoreChannel.do?&siteId=94c965cc-c55d-4f92-8469-d5875c68bd04&channel=c5bff13f-21ca-4dac-b158-cb40accd3035&currPage=" + currPage + "&pageSize=" + pageSize + "&noticeType=00101&regionCode=&purchaseManner=&title=&openTenderCode=&purchaser=&agency=&purchaseNature=&operationStartTime=" + operationStartTime + "&operationEndTime=&selectTimeName=noticeTime&cityOrArea=";
                     using (HttpClient client = new HttpClient())
                     {
@@ -57,7 +62,8 @@
                         {
                             foreach (var sichuanjieshoudtl in sichuan.data)
                             {
-                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.OpenTenderCode == sichuanjieshoudtl.openTenderCode && x.Gglx == "02" && x.NoticeTime == sichuanjieshoudtl.noticeTime).FirstOrDefault();
+                                var pageurl1 = sichuanpageurll + sichuanjieshoudtl.pageurl;
+                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.Pageurl == pageurl1).FirstOrDefault();
                                 if (zhengfuProject == null)
                                 {
                                     zhengfuProject = new ZhengfuProject();
@@ -193,34 +199,38 @@
                                             cgfsName = "鍏紑鎷涙爣";
                                             break;
                                         case "2":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "2";
                                             cgfsName = "閭�璇锋嫑鏍�";
                                             break;
                                         case "3":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "5";
                                             cgfsName = "绔炰簤鎬ц皥鍒�";
                                             break;
                                         case "4":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "4";
                                             cgfsName = "璇环";
                                             break;
                                         case "5":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "7";
                                             cgfsName = "鍗曚竴鏉ユ簮";
                                             break;
                                         case "6":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "3";
                                             cgfsName = "绔炰簤鎬х鍟�";
                                             break;
                                         case "9":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "10";
+                                            cgfsName = "鍏朵粬";
+                                            break;
+                                        default:
+                                            zhengfuProject.Cgfs = "10";
                                             cgfsName = "鍏朵粬";
                                             break;
                                     }
                                     zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                     zhengfuProject.Title = sichuanjieshoudtl.title;
                                     zhengfuProject.Shorttitle = sichuanjieshoudtl.shorttitle;
-                                    zhengfuProject.Pageurl = pageurll + sichuanjieshoudtl.pageurl;
+                                    zhengfuProject.Pageurl = sichuanpageurll + sichuanjieshoudtl.pageurl;
                                     zhengfuProject.Purchaser = sichuanjieshoudtl.purchaser;
 
                                     if (!string.IsNullOrWhiteSpace(sichuanjieshoudtl.budget))
@@ -238,7 +248,7 @@
                                     _ccontext.ZhengfuProjects.Add(zhengfuProject);
 
 
-                                    string url = $"{api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
+                                    string url = $"{Program.api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
                                     string result = string.Empty;
                                     Uri postUrl = new Uri(url);
                                     eswebcrawler eswebcrawler1 = new eswebcrawler();
@@ -307,19 +317,21 @@
                         {
                             currPage += 1;
                         }
+                        Thread.CurrentThread.Join(1000 * 2);//闃绘璁惧畾鏃堕棿
                     }
 
 
                 }
-                logg.WriteLog("鍥涘窛鐪侀噰璐叕鍛� 鑾峰彇瀹屾垚");
+                logg.WriteLog("鍥涘窛鐪侀噰璐叕鍛� 鑾峰彇瀹屾垚","鍥涘窛");
 
                 //缈婚〉淇℃伅
                 currPage = 1;
                 pageSize = 10;
                 //寮�濮嬭闂� 閲囪喘鍏憡
-                logg.WriteLog("鍥涘窛鐪佷腑鏍囧叕鍛� 寮�濮嬭幏鍙�");
+                logg.WriteLog("鍥涘窛鐪佷腑鏍囧叕鍛� 寮�濮嬭幏鍙�", "鍥涘窛");
                 while (true)
                 {
+                    logg.WriteLog(currPage.ToString(), "鍥涘窛");
                     string address = "https://zfcg.scsczt.cn/freecms/rest/v1/notice/selectInfoMoreChannel.do?&siteId=94c965cc-c55d-4f92-8469-d5875c68bd04&channel=c5bff13f-21ca-4dac-b158-cb40accd3035&currPage=" + currPage + "&pageSize=" + pageSize + "&noticeType=00102&regionCode=&purchaseManner=&title=&openTenderCode=&purchaser=&agency=&purchaseNature=&operationStartTime=" + operationStartTime + "&operationEndTime=&selectTimeName=noticeTime&cityOrArea=";
                     using (HttpClient client = new HttpClient())
                     {
@@ -334,7 +346,8 @@
                         {
                             foreach (var sichuanjieshoudtl in sichuan.data)
                             {
-                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.OpenTenderCode == sichuanjieshoudtl.openTenderCode && x.Gglx == "03" && x.NoticeTime == sichuanjieshoudtl.noticeTime).FirstOrDefault();
+                                var pageurl1 = sichuanpageurll + sichuanjieshoudtl.pageurl;
+                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.Pageurl == pageurl1).FirstOrDefault();
                                 if (zhengfuProject == null)
                                 {
                                     zhengfuProject = new ZhengfuProject();
@@ -412,7 +425,7 @@
                                     }
                                     else if (sichuanjieshoudtl.regionCode.StartsWith("5114"))
                                     {
-                                        zhengfuProject.City = "5114";
+                                        zhengfuProject.City = "511400";
                                         CityName = "鐪夊北甯�";
                                     }
                                     else if (sichuanjieshoudtl.regionCode.StartsWith("5115"))
@@ -463,41 +476,54 @@
 
 
                                     string cgfsName = "";
+                                    string BieCgfs = "";
                                     switch (sichuanjieshoudtl.purchaseManner)
                                     {
                                         case "1":
                                             zhengfuProject.Cgfs = "1";
                                             cgfsName = "鍏紑鎷涙爣";
+                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c11";
                                             break;
                                         case "2":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "2";
                                             cgfsName = "閭�璇锋嫑鏍�";
+                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c12";
                                             break;
                                         case "3":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "5";
                                             cgfsName = "绔炰簤鎬ц皥鍒�";
+                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c14";
                                             break;
                                         case "4":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "4";
                                             cgfsName = "璇环";
+                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c15";
                                             break;
                                         case "5":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "7";
                                             cgfsName = "鍗曚竴鏉ユ簮";
+                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c16";
                                             break;
                                         case "6":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "3";
                                             cgfsName = "绔炰簤鎬х鍟�";
+                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c13";
                                             break;
                                         case "9":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "10";
                                             cgfsName = "鍏朵粬";
+                                            BieCgfs = "";
+                                            break;
+                                        default:
+                                            zhengfuProject.Cgfs = "10";
+                                            cgfsName = "鍏朵粬";
+                                            BieCgfs = "";
                                             break;
                                     }
                                     zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                     zhengfuProject.Title = sichuanjieshoudtl.title;
                                     zhengfuProject.Shorttitle = sichuanjieshoudtl.shorttitle;
-                                    zhengfuProject.Pageurl = pageurll + sichuanjieshoudtl.pageurl;
+                                    zhengfuProject.Pageurl = sichuanpageurll + sichuanjieshoudtl.pageurl;
                                     zhengfuProject.Purchaser = sichuanjieshoudtl.purchaser;
 
                                     if (!string.IsNullOrWhiteSpace(sichuanjieshoudtl.budget))
@@ -515,7 +541,132 @@
                                     _ccontext.ZhengfuProjects.Add(zhengfuProject);
 
 
-                                    string url = $"{api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
+                                    Project project = new Project();
+                                    project.Id = zhengfuProject.Id;
+                                    project.StartTime = zhengfuProject.NoticeTime;
+                                    project.Sheng = zhengfuProject.Sheng;
+                                    project.City = zhengfuProject.City;
+                                    if(project.City== "510001")
+                                    {
+                                        project.AreaId  = "510002";
+                                    }
+                                    else
+                                    {
+                                        project.AreaId = zhengfuProject.RegionCode;
+                                    }
+                                   
+                                    project.Cgfs = BieCgfs;
+                                    project.Number = zhengfuProject.OpenTenderCode;
+                                    project.Name = zhengfuProject.Title;
+
+                                    if (zhengfuProject.Budget.HasValue)
+                                    {
+                                        project.Caigouyusuan = zhengfuProject.Budget.Value / new decimal(10000);
+                                    }
+                                    project.Question = zhengfuProject.Pageurl;
+                                    var parser = new HtmlParser();
+                                    var document = parser.ParseDocument(zhengfuProject.Content);
+                                    var contentList = document.All.Where(m => m.Id == "noticeArea");
+                                    var cDocumet = contentList.First();
+                                    var Numberss = cDocumet.QuerySelectorAll("p");
+                                    foreach (var Number in Numberss)
+                                    {
+                                         
+                                        if (Number != null && Number.TextContent.Contains("搴熸爣鐞嗙敱"))
+                                        {
+                                            var Fbyy = Number.QuerySelector("span");
+                                            project.Fbyy = Fbyy.TextContent.Trim();
+                                        }
+                                    }
+                                    var Caigourennames = cDocumet.QuerySelectorAll("span").Where(m => m.Id == "_notice_content_noticePurchase-purchaserOrgName");
+                                    if (Caigourennames != null && Caigourennames.ToList().Count > 0)
+                                    {
+                                        var Caigourenname = Caigourennames.First();
+                                        project.Caigourenname = Caigourenname.TextContent;
+                                    }
+                                    var Caigourenaddresss = cDocumet.QuerySelectorAll("span").Where(m => m.Id == "_notice_content_noticePurchase-purchaserOrgAddress");
+                                    if (Caigourenaddresss != null && Caigourenaddresss.ToList().Count > 0)
+                                    {
+                                        var Caigourenaddress = Caigourenaddresss.First();
+                                        project.Caigourenaddress = Caigourenaddress.TextContent;
+                                    }
+                                    var Caigourencontacts = cDocumet.QuerySelectorAll("span").Where(m => m.Id == "_notice_content_noticePurchase-purchaserLinkTel");
+                                    if (Caigourencontacts != null && Caigourencontacts.ToList().Count > 0)
+                                    {
+                                        var Caigourencontact = Caigourencontacts.First();
+                                        project.Caigourencontact = Caigourencontact.TextContent;
+                                    }
+                                    var Dailinames = cDocumet.QuerySelectorAll("span").Where(m => m.Id == "_notice_content_noticeAgency-agencyName");
+                                    if (Dailinames != null && Dailinames.ToList().Count > 0)
+                                    {
+                                        var Dailiname = Dailinames.First();
+                                        project.Dailiname = Dailiname.TextContent;
+                                    }
+                                    var Dailiaddresss = cDocumet.QuerySelectorAll("span").Where(m => m.Id == "_notice_content_noticeAgency-agentAddress");
+                                    if (Dailiaddresss != null && Dailiaddresss.ToList().Count > 0)
+                                    {
+                                        var Dailiaddress = Dailiaddresss.First();
+                                        project.Dailiaddress = Dailiaddress.TextContent;
+                                    }
+                                    var Dailicontacts = cDocumet.QuerySelectorAll("span").Where(m => m.Id == "_notice_content_noticeAgency-agentLinkTel");
+                                    if (Dailicontacts != null && Dailicontacts.ToList().Count > 0)
+                                    {
+                                        var Dailicontact = Dailicontacts.First();
+                                        project.Dailicontact = Dailicontact.TextContent;
+                                    }
+
+
+
+                                    var zhuanjias = cDocumet.QuerySelectorAll("div").Where(m => m.ClassName == "noticeBidResult-noticeBidResult _notice_content_noticeBidResult-noticeBidResult expert dynamic-form-editor");
+                                    if (zhuanjias != null && zhuanjias.ToList().Count > 0)
+                                    {
+                                        var zhuanjia = zhuanjias.First();
+
+                                        project.Zhuanjia = zhuanjia.TextContent.Trim();//OuterHtml
+                                    }
+                                    project.Creater = "111";
+                                    project.Createtime = zhengfuProject.Createtime;
+                                    project.Modifier = project.Creater;
+                                    project.Modifytime = project.Createtime;
+                                    project.RecStatus = "A";
+
+                                    _ccontext1.Projects.Add(project);
+
+                                    var table1 = cDocumet.QuerySelectorAll("div").Where(m => m.Id == "_notice_content_noticeBidResult-noticeBidResult");
+
+                                    if (table1 != null && table1.ToList().Count > 0)
+                                    {
+                                        var table = table1.First().QuerySelectorAll("table");
+                                        if (table != null && table.ToList().Count > 0)
+                                        {
+                                            for (int i = 0; i < table.Length; i++)
+                                            {
+                                                var td = table[i].QuerySelectorAll("td");
+                                                if (td.Length >= 3)
+                                                {
+                                                    
+                                                    var projectzhongbiao = new Projectzhongbiao();
+                                                    projectzhongbiao.ZhongbiaoId = Guid.NewGuid().ToString();
+                                                    projectzhongbiao.ProjectId = project.Id;
+                                                    projectzhongbiao.Names = td[0].TextContent.Trim();
+                                                    projectzhongbiao.Price = td[2].TextContent.Trim();
+                                                    _ccontext1.Projectzhongbiaos.Add(projectzhongbiao);
+                                                }
+                                            }
+                                        }
+
+                                    }
+                           
+
+
+
+
+
+
+
+
+
+                                string url = $"{Program.api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
                                     string result = string.Empty;
                                     Uri postUrl = new Uri(url);
                                     eswebcrawler eswebcrawler1 = new eswebcrawler();
@@ -568,7 +719,7 @@
                                     {
                                         throw new Exception("淇濆瓨鏁版嵁搴撳嚭閿欙紒");
                                     }
-
+                                    _ccontext1.SaveChanges();
 
                                     _ccontext.SaveChanges();
                                 }
@@ -584,19 +735,21 @@
                         {
                             currPage += 1;
                         }
+                        Thread.CurrentThread.Join(1000 * 2);//闃绘璁惧畾鏃堕棿
                     }
 
 
                 }
-                logg.WriteLog("鍥涘窛鐪佷腑鏍囧叕鍛� 鑾峰彇瀹屾垚");
+                logg.WriteLog("鍥涘窛鐪佷腑鏍囧叕鍛� 鑾峰彇瀹屾垚", "鍥涘窛");
 
                 //缈婚〉淇℃伅
                 currPage = 1;
                 pageSize = 10;
                 //寮�濮嬭闂� 閲囪喘鍏憡
-                logg.WriteLog("鍥涘窛鐪佹洿姝e叕鍛� 寮�濮嬭幏鍙�");
+                logg.WriteLog("鍥涘窛鐪佹洿姝e叕鍛� 寮�濮嬭幏鍙�", "鍥涘窛");
                 while (true)
                 {
+                    logg.WriteLog(currPage.ToString(), "鍥涘窛");
                     string address = "https://zfcg.scsczt.cn/freecms/rest/v1/notice/selectInfoMoreChannel.do?&siteId=94c965cc-c55d-4f92-8469-d5875c68bd04&channel=c5bff13f-21ca-4dac-b158-cb40accd3035&currPage=" + currPage + "&pageSize=" + pageSize + "&noticeType=00103&regionCode=&purchaseManner=&title=&openTenderCode=&purchaser=&agency=&purchaseNature=&operationStartTime=" + operationStartTime + "&operationEndTime=&selectTimeName=noticeTime&cityOrArea=";
                     using (HttpClient client = new HttpClient())
                     {
@@ -611,7 +764,8 @@
                         {
                             foreach (var sichuanjieshoudtl in sichuan.data)
                             {
-                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.OpenTenderCode == sichuanjieshoudtl.openTenderCode && x.Gglx == "04" && x.NoticeTime == sichuanjieshoudtl.noticeTime).FirstOrDefault();
+                                var pageurl1 = sichuanpageurll + sichuanjieshoudtl.pageurl;
+                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.Pageurl == pageurl1).FirstOrDefault();
                                 if (zhengfuProject == null)
                                 {
                                     zhengfuProject = new ZhengfuProject();
@@ -747,34 +901,38 @@
                                             cgfsName = "鍏紑鎷涙爣";
                                             break;
                                         case "2":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "2";
                                             cgfsName = "閭�璇锋嫑鏍�";
                                             break;
                                         case "3":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "5";
                                             cgfsName = "绔炰簤鎬ц皥鍒�";
                                             break;
                                         case "4":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "4";
                                             cgfsName = "璇环";
                                             break;
                                         case "5":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "7";
                                             cgfsName = "鍗曚竴鏉ユ簮";
                                             break;
                                         case "6":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "3";
                                             cgfsName = "绔炰簤鎬х鍟�";
                                             break;
                                         case "9":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "10";
+                                            cgfsName = "鍏朵粬";
+                                            break;
+                                        default:
+                                            zhengfuProject.Cgfs = "10";
                                             cgfsName = "鍏朵粬";
                                             break;
                                     }
                                     zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                     zhengfuProject.Title = sichuanjieshoudtl.title;
                                     zhengfuProject.Shorttitle = sichuanjieshoudtl.shorttitle;
-                                    zhengfuProject.Pageurl = pageurll + sichuanjieshoudtl.pageurl;
+                                    zhengfuProject.Pageurl = sichuanpageurll + sichuanjieshoudtl.pageurl;
                                     zhengfuProject.Purchaser = sichuanjieshoudtl.purchaser;
 
                                     if (!string.IsNullOrWhiteSpace(sichuanjieshoudtl.budget))
@@ -792,7 +950,7 @@
                                     _ccontext.ZhengfuProjects.Add(zhengfuProject);
 
 
-                                    string url = $"{api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
+                                    string url = $"{Program.api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
                                     string result = string.Empty;
                                     Uri postUrl = new Uri(url);
                                     eswebcrawler eswebcrawler1 = new eswebcrawler();
@@ -861,20 +1019,22 @@
                         {
                             currPage += 1;
                         }
+                        Thread.CurrentThread.Join(1000 * 2);//闃绘璁惧畾鏃堕棿
                     }
 
 
                 }
-                logg.WriteLog("鍥涘窛鐪佹洿姝e叕鍛� 鑾峰彇瀹屾垚");
+                logg.WriteLog("鍥涘窛鐪佹洿姝e叕鍛� 鑾峰彇瀹屾垚", "鍥涘窛");
 
 
                 //缈婚〉淇℃伅
                 currPage = 1;
                 pageSize = 10;
                 //寮�濮嬭闂� 閲囪喘鍏憡
-                logg.WriteLog("鍥涘窛鐪佸簾鏍囧叕鍛� 寮�濮嬭幏鍙�");
+                logg.WriteLog("鍥涘窛鐪佸簾鏍囧叕鍛� 寮�濮嬭幏鍙�", "鍥涘窛");
                 while (true)
                 {
+                    logg.WriteLog(currPage.ToString(), "鍥涘窛");
                     string address = "https://zfcg.scsczt.cn/freecms/rest/v1/notice/selectInfoMoreChannel.do?&siteId=94c965cc-c55d-4f92-8469-d5875c68bd04&channel=c5bff13f-21ca-4dac-b158-cb40accd3035&currPage=" + currPage + "&pageSize=" + pageSize + "&noticeType=001004,001006&regionCode=&purchaseManner=&title=&openTenderCode=&purchaser=&agency=&purchaseNature=&operationStartTime=" + operationStartTime + "&operationEndTime=&selectTimeName=noticeTime&cityOrArea=";
                     using (HttpClient client = new HttpClient())
                     {
@@ -889,7 +1049,8 @@
                         {
                             foreach (var sichuanjieshoudtl in sichuan.data)
                             {
-                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.OpenTenderCode == sichuanjieshoudtl.openTenderCode && x.Gglx == "11" && x.NoticeTime == sichuanjieshoudtl.noticeTime).FirstOrDefault();
+                                var pageurl1 = sichuanpageurll + sichuanjieshoudtl.pageurl;
+                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.Pageurl == pageurl1).FirstOrDefault();
                                 if (zhengfuProject == null)
                                 {
                                     zhengfuProject = new ZhengfuProject();
@@ -1025,34 +1186,38 @@
                                             cgfsName = "鍏紑鎷涙爣";
                                             break;
                                         case "2":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "2";
                                             cgfsName = "閭�璇锋嫑鏍�";
                                             break;
                                         case "3":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "5";
                                             cgfsName = "绔炰簤鎬ц皥鍒�";
                                             break;
                                         case "4":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "4";
                                             cgfsName = "璇环";
                                             break;
                                         case "5":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "7";
                                             cgfsName = "鍗曚竴鏉ユ簮";
                                             break;
                                         case "6":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "3";
                                             cgfsName = "绔炰簤鎬х鍟�";
                                             break;
                                         case "9":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "10";
+                                            cgfsName = "鍏朵粬";
+                                            break;
+                                        default:
+                                            zhengfuProject.Cgfs = "10";
                                             cgfsName = "鍏朵粬";
                                             break;
                                     }
                                     zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                     zhengfuProject.Title = sichuanjieshoudtl.title;
                                     zhengfuProject.Shorttitle = sichuanjieshoudtl.shorttitle;
-                                    zhengfuProject.Pageurl = pageurll + sichuanjieshoudtl.pageurl;
+                                    zhengfuProject.Pageurl = sichuanpageurll + sichuanjieshoudtl.pageurl;
                                     zhengfuProject.Purchaser = sichuanjieshoudtl.purchaser;
 
                                     if (!string.IsNullOrWhiteSpace(sichuanjieshoudtl.budget))
@@ -1070,7 +1235,7 @@
                                     _ccontext.ZhengfuProjects.Add(zhengfuProject);
 
 
-                                    string url = $"{api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
+                                    string url = $"{Program.api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
                                     string result = string.Empty;
                                     Uri postUrl = new Uri(url);
                                     eswebcrawler eswebcrawler1 = new eswebcrawler();
@@ -1139,19 +1304,21 @@
                         {
                             currPage += 1;
                         }
+                        Thread.CurrentThread.Join(1000 * 2);//闃绘璁惧畾鏃堕棿
                     }
 
 
                 }
-                logg.WriteLog("鍥涘窛鐪佸簾鏍囧叕鍛� 鑾峰彇瀹屾垚");
+                logg.WriteLog("鍥涘窛鐪佸簾鏍囧叕鍛� 鑾峰彇瀹屾垚", "鍥涘窛");
 
                 //缈婚〉淇℃伅
                 currPage = 1;
                  pageSize = 10;
                 //寮�濮嬭闂� 閲囪喘鍏憡
-                logg.WriteLog("鍥涘窛鐪佹剰鍚戝叕寮� 寮�濮嬭幏鍙�");
+                logg.WriteLog("鍥涘窛鐪佹剰鍚戝叕寮� 寮�濮嬭幏鍙�", "鍥涘窛");
                 while (true)
                 {
+                    logg.WriteLog(currPage.ToString(), "鍥涘窛");
                     string address = "https://zfcg.scsczt.cn/freecms/rest/v1/notice/selectInfoMoreChannel.do?&siteId=94c965cc-c55d-4f92-8469-d5875c68bd04&channel=c5bff13f-21ca-4dac-b158-cb40accd3035&currPage="+ currPage + "&pageSize="+ pageSize + "&noticeType=59&regionCode=&purchaseManner=&title=&openTenderCode=&purchaser=&agency=&purchaseNature=&operationStartTime="+ operationStartTime + "&operationEndTime=&selectTimeName=noticeTime&cityOrArea=";
                     using (HttpClient client = new HttpClient())
                     {
@@ -1166,7 +1333,8 @@
                         {
                             foreach (var sichuanjieshoudtl in sichuan.data)
                             {
-                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.OpenTenderCode == sichuanjieshoudtl.openTenderCode && x.Gglx == "01" && x.NoticeTime == sichuanjieshoudtl.noticeTime).FirstOrDefault();
+                                var pageurl1 = sichuanpageurll + sichuanjieshoudtl.pageurl;
+                                ZhengfuProject zhengfuProject = _ccontext.ZhengfuProjects.Where(x => x.Pageurl == pageurl1).FirstOrDefault();
                                 if (zhengfuProject == null)
                                 {
                                     zhengfuProject = new ZhengfuProject();
@@ -1302,34 +1470,38 @@
                                             cgfsName = "鍏紑鎷涙爣";
                                             break;
                                         case "2":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "2";
                                             cgfsName = "閭�璇锋嫑鏍�";
                                             break;
                                         case "3":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "5";
                                             cgfsName = "绔炰簤鎬ц皥鍒�";
                                             break;
                                         case "4":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "4";
                                             cgfsName = "璇环";
                                             break;
                                         case "5":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "7";
                                             cgfsName = "鍗曚竴鏉ユ簮";
                                             break;
                                         case "6":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "3";
                                             cgfsName = "绔炰簤鎬х鍟�";
                                             break;
                                         case "9":
-                                            zhengfuProject.Cgfs = "1";
+                                            zhengfuProject.Cgfs = "10";
+                                            cgfsName = "鍏朵粬";
+                                            break;
+                                        default:
+                                            zhengfuProject.Cgfs = "10";
                                             cgfsName = "鍏朵粬";
                                             break;
                                     }
                                     zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                     zhengfuProject.Title = sichuanjieshoudtl.title;
                                     zhengfuProject.Shorttitle = sichuanjieshoudtl.shorttitle;
-                                    zhengfuProject.Pageurl = pageurll + sichuanjieshoudtl.pageurl;
+                                    zhengfuProject.Pageurl = sichuanpageurll + sichuanjieshoudtl.pageurl;
                                     zhengfuProject.Purchaser = sichuanjieshoudtl.purchaser;
 
                                     if (!string.IsNullOrWhiteSpace(sichuanjieshoudtl.budget))
@@ -1347,7 +1519,7 @@
                                     _ccontext.ZhengfuProjects.Add(zhengfuProject);
 
 
-                                    string url = $"{api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
+                                    string url = $"{Program.api_domain}/webcrawler/_doc/" + zhengfuProject.Id;
                                     string result = string.Empty;
                                     Uri postUrl = new Uri(url);
                                     eswebcrawler eswebcrawler1 = new eswebcrawler();
@@ -1416,11 +1588,12 @@
                         {
                             currPage += 1;
                         }
+                        Thread.CurrentThread.Join(1000 * 2);//闃绘璁惧畾鏃堕棿
                     }
 
 
                 }
-                logg.WriteLog("鍥涘窛鐪佹剰鍚戝叕寮� 鑾峰彇瀹屾垚");
+                logg.WriteLog("鍥涘窛鐪佹剰鍚戝叕寮� 鑾峰彇瀹屾垚", "鍥涘窛");
 
                 //淇濆瓨鏈�鍚庢洿鏂版椂闂�
                 if (updatetime != null)
@@ -1440,11 +1613,11 @@
             }
             catch (Exception ex)
             {
-                logg.WriteLog(ex.Message);
+                logg.WriteLog(ex.Message, "鍥涘窛");
 
-                logg.WriteLog(ex.StackTrace);
+                logg.WriteLog(ex.StackTrace, "鍥涘窛");
 
-                logg.WriteLog(ex.ToString());
+                logg.WriteLog(ex.ToString(), "鍥涘窛");
             }
             finally
             {

--
Gitblit v1.9.1