username@email.com
2024-07-24 294494e5559dcc92670dd9800caf976853aff876
zhengcaioa/Crawler/sichuan/CcgpSichuanoperation.cs
@@ -3,10 +3,14 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.IO.Compression;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
using zhengcaioa.Models;
namespace Crawler.sichuan
@@ -41,7 +45,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 意向公开
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=9&dbselect=bidx&kw=%E6%84%8F%E5%90%91&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=9&dbselect=bidx&kw=%E6%84%8F%E5%90%91&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省意向公开 开始获取", "中国政采网四川省");
                    yixianggonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage);
                    logg.WriteLog("中国政采网四川省意向公开 开始获取结束", "中国政采网四川省");
@@ -51,7 +55,7 @@
                    #region 公开招标
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=1&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=1&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省采购公告 公开招标 开始获取", "中国政采网四川省");
                    caigougonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage, "1", "公开招标");
                    logg.WriteLog("中国政采网四川省采购公告 公开招标 开始获取结束", "中国政采网四川省");
@@ -60,7 +64,7 @@
                    #region 询价
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=2&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=2&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省采购公告 询价 开始获取", "中国政采网四川省");
                    caigougonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage, "4", "询价");
                    logg.WriteLog("中国政采网四川省采购公告 询价 开始获取结束", "中国政采网四川省");
@@ -68,7 +72,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 竞争性谈判
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=3&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=3&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省采购公告 竞争性谈判 开始获取", "中国政采网四川省");
                    caigougonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage, "5", "竞争性谈判");
                    logg.WriteLog("中国政采网四川省采购公告 竞争性谈判 开始获取结束", "中国政采网四川省");
@@ -76,7 +80,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 单一来源
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=4&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=4&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省采购公告 单一来源 开始获取", "中国政采网四川省");
                    caigougonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage, "7", "单一来源");
                    logg.WriteLog("中国政采网四川省采购公告 单一来源 开始获取结束", "中国政采网四川省");
@@ -84,7 +88,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 邀请招标
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=6&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=6&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省采购公告 邀请招标 开始获取", "中国政采网四川省");
                    caigougonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage, "2", "邀请招标");
                    logg.WriteLog("中国政采网四川省采购公告 邀请招标 开始获取结束", "中国政采网四川省");
@@ -92,7 +96,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 竞争性磋商
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=10&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=10&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省采购公告 竞争性磋商 开始获取", "中国政采网四川省");
                    caigougonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage, "3", "竞争性磋商");
                    logg.WriteLog("中国政采网四川省采购公告 竞争性磋商 开始获取结束", "中国政采网四川省");
@@ -100,7 +104,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 中标公告
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=7&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=7&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省中标公告 开始获取", "中国政采网四川省");
                    zhongbiaogonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage);
                    logg.WriteLog("中国政采网四川省中标公告 开始获取结束", "中国政采网四川省");
@@ -108,7 +112,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 成交公告
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=11&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=11&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省成交公告 开始获取", "中国政采网四川省");
                    zhongbiaogonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage);
                    logg.WriteLog("中国政采网四川省成交公告 开始获取结束", "中国政采网四川省");
@@ -116,7 +120,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 更正公告
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=8&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=8&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省更正公告 开始获取", "中国政采网四川省");
                    gengzhenggonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage);
                    logg.WriteLog("中国政采网四川省更正公告 开始获取结束", "中国政采网四川省");
@@ -124,7 +128,7 @@
                    //Thread.CurrentThread.Join(1000 * 60 * 30);//阻止设定时间
                    #region 废标公告
                    currPage = 1;
                    sichuanpageurll = "http://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=12&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    sichuanpageurll = "https://search.ccgp.gov.cn/bxsearch?searchtype=1&page_index=1&bidSort=0&buyerName=&projectId=&pinMu=0&bidType=12&dbselect=bidx&kw=&start_time=&end_time=&timeType=6&displayZone=%E5%9B%9B%E5%B7%9D&zoneId=51&pppStatus=&agentName=";
                    logg.WriteLog("中国政采网四川省废标公告 开始获取", "中国政采网四川省");
                    feibiaogonggao(_ccontext, sichuanpageurll, operationStartTime, operationEndTime, currPage);
                    logg.WriteLog("中国政采网四川省废标公告 开始获取结束", "中国政采网四川省");
@@ -171,7 +175,7 @@
        //采购公告
        public static void caigougonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page, string cgfs, string cgfsName)
        public static async void caigougonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page, string cgfs, string cgfsName)
        {
            sichuanpageurll = sichuanpageurll.Replace("start_time=", "start_time=" + startTime.Replace("-", "%3A"));
@@ -185,12 +189,36 @@
                string sichuanpageurl2 = sichuanpageurll.Replace("page_index=1", "page_index=" + page);
                try
                {
                    using (HttpClient client = new HttpClient())
                    HttpClientHandler handler = new HttpClientHandler();
                    handler.CookieContainer = new CookieContainer();
                    using (HttpClient client = new HttpClient(handler))
                    {
                        client.Timeout = TimeSpan.FromSeconds(60);
                        client.DefaultRequestHeaders.Add("Accept", "*/*");
                        client.DefaultRequestHeaders.Add("Accept-Encoding", "gzip, deflate, br");
                        client.DefaultRequestHeaders.Add("Host", "search.ccgp.gov.cn");
                        //List<sichuanjieshoudtl> data = new List<sichuanjieshoudtl>();
                        HttpResponseMessage response = client.GetAsync(sichuanpageurl2).Result;
                        var res = response.Content.ReadAsStringAsync().Result;
                        string res = "";
                        if (response.IsSuccessStatusCode)
                        {
                            using (var responseStream = await response.Content.ReadAsStreamAsync())
                            {
                                using (var decompressedStream = new GZipStream(responseStream, CompressionMode.Decompress))
                                {
                                    using (var reader = new StreamReader(decompressedStream))
                                    {
                                        res = await reader.ReadToEndAsync();
                                        // 处理解压缩后的响应内容
                                    }
                                }
                            }
                        }
                        else
                        {
                            // 处理请求失败的情况
                        }
                        //var res = response.Content.ReadAsStringAsync().Result;
                        var document = parser.ParseDocument(res);
                        var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
                        var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -229,7 +257,32 @@
                                list11 = lists.ToList();
                            }
                            string[] bbb = null;
                            var scriptElements = document.QuerySelectorAll("script");
                            foreach (var scriptElement in scriptElements)
                            {
                                var scriptText = scriptElement.TextContent;
                                if (scriptText.Contains("var ohtmlurls")) // 检查文本中是否包含特定变量
                                {
                                        int startIndex = scriptText.IndexOf('"') + 1;
                                        int endIndex = scriptText.IndexOf('"', startIndex);
                                        if (startIndex > 0 && endIndex > startIndex)
                                        {
                                        var aaaa =   scriptText.Substring(startIndex, endIndex - startIndex);
                                        if (!string.IsNullOrEmpty(aaaa))
                                        {
                                             bbb = aaaa.Split(',');
                                        }
                                    }
                                }
                            }
                            int ccc = 0;
                            foreach (var sichuanjieshoudtl1 in lists)
                            {
@@ -237,7 +290,17 @@
                                try
                                {
                                    sichuanjieshoudtl aaaaaaaa = new sichuanjieshoudtl();
                                    aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    if(bbb!=null && bbb.Length>= ccc && !string.IsNullOrEmpty(bbb[ccc]))
                                    {
                                        aaaaaaaa.pageurl = bbb[ccc];
                                        ccc = ccc + 1;
                                    }
                                    else
                                    {
                                        ccc = ccc + 1;
                                        continue;
                                    }
                                   // aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    logg.WriteLog(aaaaaaaa.pageurl, "中国政采网四川省");
                                    aaaaaaaa.title = sichuanjieshoudtl1.QuerySelector("a").TextContent.Replace("\n", "").Trim();
@@ -289,7 +352,7 @@
                                                {
                                                    var ssss = fujianya.Id;
                                                    var sssss = fujianya.InnerHtml;
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"http://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"https://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                }
                                                fujianhtml += "</tbody></table></div>";
@@ -542,7 +605,7 @@
        //意向公开
        public static void yixianggonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime,string endTime, int page)
        public static async void yixianggonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime,string endTime, int page)
        {
            sichuanpageurll = sichuanpageurll.Replace("start_time=", "start_time=" + startTime.Replace("-", "%3A"));
@@ -556,12 +619,36 @@
                string sichuanpageurl2 = sichuanpageurll.Replace("page_index=1", "page_index=" + page);
                try
                {
                    using (HttpClient client = new HttpClient())
                    HttpClientHandler handler = new HttpClientHandler();
                    handler.CookieContainer = new CookieContainer();
                    using (HttpClient client = new HttpClient(handler))
                    {
                        client.Timeout = TimeSpan.FromSeconds(60);
                        client.DefaultRequestHeaders.Add("Accept", "*/*");
                        client.DefaultRequestHeaders.Add("Accept-Encoding", "gzip, deflate, br");
                        client.DefaultRequestHeaders.Add("Host", "search.ccgp.gov.cn");
                        //List<sichuanjieshoudtl> data = new List<sichuanjieshoudtl>();
                        HttpResponseMessage response = client.GetAsync(sichuanpageurl2).Result;
                        var res = response.Content.ReadAsStringAsync().Result;
                        //var res = response.Content.ReadAsStringAsync().Result;
                        string res = "";
                        if (response.IsSuccessStatusCode)
                        {
                            using (var responseStream = await response.Content.ReadAsStreamAsync())
                            {
                                using (var decompressedStream = new GZipStream(responseStream, CompressionMode.Decompress))
                                {
                                    using (var reader = new StreamReader(decompressedStream))
                                    {
                                        res = await reader.ReadToEndAsync();
                                        // 处理解压缩后的响应内容
                                    }
                                }
                            }
                        }
                        else
                        {
                            // 处理请求失败的情况
                        }
                        var document = parser.ParseDocument(res);
                        var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
                        var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -599,13 +686,51 @@
                            {
                                list11 = lists.ToList();
                            }
                            string[] bbb = null;
                            var scriptElements = document.QuerySelectorAll("script");
                            foreach (var scriptElement in scriptElements)
                            {
                                var scriptText = scriptElement.TextContent;
                                if (scriptText.Contains("var ohtmlurls")) // 检查文本中是否包含特定变量
                                {
                                    int startIndex = scriptText.IndexOf('"') + 1;
                                    int endIndex = scriptText.IndexOf('"', startIndex);
                                    if (startIndex > 0 && endIndex > startIndex)
                                    {
                                        var aaaa = scriptText.Substring(startIndex, endIndex - startIndex);
                                        if (!string.IsNullOrEmpty(aaaa))
                                        {
                                            bbb = aaaa.Split(',');
                                        }
                                    }
                                }
                            }
                            int ccc = 0;
                            foreach (var sichuanjieshoudtl1 in lists)
                            {
                                Thread.CurrentThread.Join(1000 * 10);//阻止设定时间
                                try
                                {
                                    sichuanjieshoudtl aaaaaaaa = new sichuanjieshoudtl();
                                    aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    if (bbb != null && bbb.Length >= ccc && !string.IsNullOrEmpty(bbb[ccc]))
                                    {
                                        aaaaaaaa.pageurl = bbb[ccc];
                                        ccc = ccc + 1;
                                    }
                                    else
                                    {
                                        ccc = ccc + 1;
                                        continue;
                                    }
                                    // aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    logg.WriteLog(aaaaaaaa.pageurl, "中国政采网四川省");
                                    aaaaaaaa.title = sichuanjieshoudtl1.QuerySelector("a").TextContent.Replace("\n", "").Trim();
@@ -655,7 +780,7 @@
                                                {
                                                    var ssss = fujianya.Id;
                                                    var sssss = fujianya.InnerHtml;
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"http://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"https://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                }
                                                fujianhtml += "</tbody></table></div>";
@@ -857,7 +982,7 @@
        //结果公告
        public static void zhongbiaogonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page)
        public static async void zhongbiaogonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page)
        {
            sichuanpageurll = sichuanpageurll.Replace("start_time=", "start_time=" + startTime.Replace("-", "%3A"));
@@ -871,12 +996,36 @@
                string sichuanpageurl2 = sichuanpageurll.Replace("page_index=1", "page_index=" + page);
                try
                {
                    using (HttpClient client = new HttpClient())
                    HttpClientHandler handler = new HttpClientHandler();
                    handler.CookieContainer = new CookieContainer();
                    using (HttpClient client = new HttpClient(handler))
                    {
                        client.Timeout = TimeSpan.FromSeconds(60);
                        client.DefaultRequestHeaders.Add("Accept", "*/*");
                        client.DefaultRequestHeaders.Add("Accept-Encoding", "gzip, deflate, br");
                        client.DefaultRequestHeaders.Add("Host", "search.ccgp.gov.cn");
                        //List<sichuanjieshoudtl> data = new List<sichuanjieshoudtl>();
                        HttpResponseMessage response = client.GetAsync(sichuanpageurl2).Result;
                        var res = response.Content.ReadAsStringAsync().Result;
                        //var res = response.Content.ReadAsStringAsync().Result;
                        string res = "";
                        if (response.IsSuccessStatusCode)
                        {
                            using (var responseStream = await response.Content.ReadAsStreamAsync())
                            {
                                using (var decompressedStream = new GZipStream(responseStream, CompressionMode.Decompress))
                                {
                                    using (var reader = new StreamReader(decompressedStream))
                                    {
                                        res = await reader.ReadToEndAsync();
                                        // 处理解压缩后的响应内容
                                    }
                                }
                            }
                        }
                        else
                        {
                            // 处理请求失败的情况
                        }
                        var document = parser.ParseDocument(res);
                        var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
                        var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -915,13 +1064,50 @@
                                list11 = lists.ToList();
                            }
                            string[] bbb = null;
                            var scriptElements = document.QuerySelectorAll("script");
                            foreach (var scriptElement in scriptElements)
                            {
                                var scriptText = scriptElement.TextContent;
                                if (scriptText.Contains("var ohtmlurls")) // 检查文本中是否包含特定变量
                                {
                                    int startIndex = scriptText.IndexOf('"') + 1;
                                    int endIndex = scriptText.IndexOf('"', startIndex);
                                    if (startIndex > 0 && endIndex > startIndex)
                                    {
                                        var aaaa = scriptText.Substring(startIndex, endIndex - startIndex);
                                        if (!string.IsNullOrEmpty(aaaa))
                                        {
                                            bbb = aaaa.Split(',');
                                        }
                                    }
                                }
                            }
                            int ccc = 0;
                            foreach (var sichuanjieshoudtl1 in lists)
                            {
                                Thread.CurrentThread.Join(1000 * 10);//阻止设定时间
                                try
                                {
                                    sichuanjieshoudtl aaaaaaaa = new sichuanjieshoudtl();
                                    aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    if (bbb != null && bbb.Length >= ccc && !string.IsNullOrEmpty(bbb[ccc]))
                                    {
                                        aaaaaaaa.pageurl = bbb[ccc];
                                        ccc = ccc + 1;
                                    }
                                    else
                                    {
                                        ccc = ccc + 1;
                                        continue;
                                    }
                                    // aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    logg.WriteLog(aaaaaaaa.pageurl, "中国政采网四川省");
                                    aaaaaaaa.title = sichuanjieshoudtl1.QuerySelector("a").TextContent.Replace("\n", "").Trim();
@@ -971,7 +1157,7 @@
                                                {
                                                    var ssss = fujianya.Id;
                                                    var sssss = fujianya.InnerHtml;
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"http://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"https://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                }
                                                fujianhtml += "</tbody></table></div>";
@@ -1224,7 +1410,7 @@
        }
        //更正公告
        public static void gengzhenggonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page)
        public static async void gengzhenggonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page)
        {
            sichuanpageurll = sichuanpageurll.Replace("start_time=", "start_time=" + startTime.Replace("-", "%3A"));
@@ -1238,12 +1424,36 @@
                string sichuanpageurl2 = sichuanpageurll.Replace("page_index=1", "page_index=" + page);
                try
                {
                    using (HttpClient client = new HttpClient())
                    HttpClientHandler handler = new HttpClientHandler();
                    handler.CookieContainer = new CookieContainer();
                    using (HttpClient client = new HttpClient(handler))
                    {
                        client.Timeout = TimeSpan.FromSeconds(60);
                        client.DefaultRequestHeaders.Add("Accept", "*/*");
                        client.DefaultRequestHeaders.Add("Accept-Encoding", "gzip, deflate, br");
                        client.DefaultRequestHeaders.Add("Host", "search.ccgp.gov.cn");
                        //List<sichuanjieshoudtl> data = new List<sichuanjieshoudtl>();
                        HttpResponseMessage response = client.GetAsync(sichuanpageurl2).Result;
                        var res = response.Content.ReadAsStringAsync().Result;
                        //var res = response.Content.ReadAsStringAsync().Result;
                        string res = "";
                        if (response.IsSuccessStatusCode)
                        {
                            using (var responseStream = await response.Content.ReadAsStreamAsync())
                            {
                                using (var decompressedStream = new GZipStream(responseStream, CompressionMode.Decompress))
                                {
                                    using (var reader = new StreamReader(decompressedStream))
                                    {
                                        res = await reader.ReadToEndAsync();
                                        // 处理解压缩后的响应内容
                                    }
                                }
                            }
                        }
                        else
                        {
                            // 处理请求失败的情况
                        }
                        var document = parser.ParseDocument(res);
                        var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
                        var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -1282,13 +1492,50 @@
                                list11 = lists.ToList();
                            }
                            string[] bbb = null;
                            var scriptElements = document.QuerySelectorAll("script");
                            foreach (var scriptElement in scriptElements)
                            {
                                var scriptText = scriptElement.TextContent;
                                if (scriptText.Contains("var ohtmlurls")) // 检查文本中是否包含特定变量
                                {
                                    int startIndex = scriptText.IndexOf('"') + 1;
                                    int endIndex = scriptText.IndexOf('"', startIndex);
                                    if (startIndex > 0 && endIndex > startIndex)
                                    {
                                        var aaaa = scriptText.Substring(startIndex, endIndex - startIndex);
                                        if (!string.IsNullOrEmpty(aaaa))
                                        {
                                            bbb = aaaa.Split(',');
                                        }
                                    }
                                }
                            }
                            int ccc = 0;
                            foreach (var sichuanjieshoudtl1 in lists)
                            {
                                Thread.CurrentThread.Join(1000 * 10);//阻止设定时间
                                try
                                {
                                    sichuanjieshoudtl aaaaaaaa = new sichuanjieshoudtl();
                                    aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    if (bbb != null && bbb.Length >= ccc && !string.IsNullOrEmpty(bbb[ccc]))
                                    {
                                        aaaaaaaa.pageurl = bbb[ccc];
                                        ccc = ccc + 1;
                                    }
                                    else
                                    {
                                        ccc = ccc + 1;
                                        continue;
                                    }
                                    // aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    logg.WriteLog(aaaaaaaa.pageurl, "中国政采网四川省");
                                    aaaaaaaa.title = sichuanjieshoudtl1.QuerySelector("a").TextContent.Replace("\n", "").Trim();
@@ -1338,7 +1585,7 @@
                                                {
                                                    var ssss = fujianya.Id;
                                                    var sssss = fujianya.InnerHtml;
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"http://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"https://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                }
                                                fujianhtml += "</tbody></table></div>";
@@ -1539,7 +1786,7 @@
        //废标公告
        public static void feibiaogonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page)
        public static async void feibiaogonggao(WebCrawlerContext _ccontext, string sichuanpageurll, string startTime, string endTime , int page)
        {
            sichuanpageurll = sichuanpageurll.Replace("start_time=", "start_time=" + startTime.Replace("-", "%3A"));
@@ -1553,12 +1800,36 @@
                string sichuanpageurl2 = sichuanpageurll.Replace("page_index=1", "page_index=" + page);
                try
                {
                    using (HttpClient client = new HttpClient())
                    HttpClientHandler handler = new HttpClientHandler();
                    handler.CookieContainer = new CookieContainer();
                    using (HttpClient client = new HttpClient(handler))
                    {
                        //List<sichuanjieshoudtl> data = new List<sichuanjieshoudtl>();
                        client.Timeout = TimeSpan.FromSeconds(60);
                        client.DefaultRequestHeaders.Add("Accept", "*/*");
                        client.DefaultRequestHeaders.Add("Accept-Encoding", "gzip, deflate, br");
                        client.DefaultRequestHeaders.Add("Host", "search.ccgp.gov.cn");
                        HttpResponseMessage response = client.GetAsync(sichuanpageurl2).Result;
                        var res = response.Content.ReadAsStringAsync().Result;
                        //var res = response.Content.ReadAsStringAsync().Result;
                        string res = "";
                        if (response.IsSuccessStatusCode)
                        {
                            using (var responseStream = await response.Content.ReadAsStreamAsync())
                            {
                                using (var decompressedStream = new GZipStream(responseStream, CompressionMode.Decompress))
                                {
                                    using (var reader = new StreamReader(decompressedStream))
                                    {
                                        res = await reader.ReadToEndAsync();
                                        // 处理解压缩后的响应内容
                                    }
                                }
                            }
                        }
                        else
                        {
                            // 处理请求失败的情况
                        }
                        var document = parser.ParseDocument(res);
                        var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
                        var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -1597,13 +1868,51 @@
                                list11 = lists.ToList();
                            }
                            string[] bbb = null;
                            var scriptElements = document.QuerySelectorAll("script");
                            foreach (var scriptElement in scriptElements)
                            {
                                var scriptText = scriptElement.TextContent;
                                if (scriptText.Contains("var ohtmlurls")) // 检查文本中是否包含特定变量
                                {
                                    int startIndex = scriptText.IndexOf('"') + 1;
                                    int endIndex = scriptText.IndexOf('"', startIndex);
                                    if (startIndex > 0 && endIndex > startIndex)
                                    {
                                        var aaaa = scriptText.Substring(startIndex, endIndex - startIndex);
                                        if (!string.IsNullOrEmpty(aaaa))
                                        {
                                            bbb = aaaa.Split(',');
                                        }
                                    }
                                }
                            }
                            int ccc = 0;
                            foreach (var sichuanjieshoudtl1 in lists)
                            {
                                Thread.CurrentThread.Join(1000 * 10);//阻止设定时间
                                try
                                {
                                    sichuanjieshoudtl aaaaaaaa = new sichuanjieshoudtl();
                                    aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    if (bbb != null && bbb.Length >= ccc && !string.IsNullOrEmpty(bbb[ccc]))
                                    {
                                        aaaaaaaa.pageurl = bbb[ccc];
                                        ccc = ccc + 1;
                                    }
                                    else
                                    {
                                        ccc = ccc + 1;
                                        continue;
                                    }
                                    // aaaaaaaa.pageurl = sichuanjieshoudtl1.QuerySelector("a").GetAttribute("href");
                                    logg.WriteLog(aaaaaaaa.pageurl, "中国政采网四川省");
                                    aaaaaaaa.title = sichuanjieshoudtl1.QuerySelector("a").TextContent.Replace("\n", "").Trim();
@@ -1653,7 +1962,7 @@
                                                {
                                                    var ssss = fujianya.Id;
                                                    var sssss = fujianya.InnerHtml;
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"http://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                    fujianhtml += "<tr><td class=\"bid_attachtab_content\">附件下载:<a class=\"bizDownload\" target=\"_blank\" href =\"https://download.ccgp.gov.cn/oss/download?uuid=" + ssss + "\" id=\"0E1723104D34335C527765FF6CD28A\" title=\"点击下载\">" + sssss + "</a><br></td></tr>";
                                                }
                                                fujianhtml += "</tbody></table></div>";