username@email.com
2022-11-12 b20a34e8277267124f9708c2c97e92ed1052fa08
zhengcaioa/Crawler/sichuan/sichuanoperation.cs
@@ -1,4 +1,6 @@
using Newtonsoft.Json;
using AngleSharp.Html.Parser;
using DTO;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -12,10 +14,9 @@
{
   public class sichuanoperation
    {
        //public static string api_domain = "http://192.168.0.116:9200";
        public static string api_domain = "http://localhost:9200";
        public static string sichuanpageurll = "https://zfcg.scsczt.cn";
        public static void operations(WebCrawlerContext _ccontext)
        public static void operations(WebCrawlerContext _ccontext, zhengcaioaContext _ccontext1)
        {
            try
            {
@@ -221,6 +222,10 @@
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                        default:
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                    }
                                    zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                    zhengfuProject.Title = sichuanjieshoudtl.title;
@@ -243,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();
@@ -420,7 +425,7 @@
                                    }
                                    else if (sichuanjieshoudtl.regionCode.StartsWith("5114"))
                                    {
                                        zhengfuProject.City = "5114";
                                        zhengfuProject.City = "511400";
                                        CityName = "眉山市";
                                    }
                                    else if (sichuanjieshoudtl.regionCode.StartsWith("5115"))
@@ -471,35 +476,48 @@
                                    string cgfsName = "";
                                    string BieCgfs = "";
                                    switch (sichuanjieshoudtl.purchaseManner)
                                    {
                                        case "1":
                                            zhengfuProject.Cgfs = "1";
                                            cgfsName = "公开招标";
                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c11";
                                            break;
                                        case "2":
                                            zhengfuProject.Cgfs = "2";
                                            cgfsName = "邀请招标";
                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c12";
                                            break;
                                        case "3":
                                            zhengfuProject.Cgfs = "5";
                                            cgfsName = "竞争性谈判";
                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c14";
                                            break;
                                        case "4":
                                            zhengfuProject.Cgfs = "4";
                                            cgfsName = "询价";
                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c15";
                                            break;
                                        case "5":
                                            zhengfuProject.Cgfs = "7";
                                            cgfsName = "单一来源";
                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c16";
                                            break;
                                        case "6":
                                            zhengfuProject.Cgfs = "3";
                                            cgfsName = "竞争性磋商";
                                            BieCgfs = "e4c93811-b9b1-4998-89f5-c416ebab0c13";
                                            break;
                                        case "9":
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            BieCgfs = "";
                                            break;
                                        default:
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            BieCgfs = "";
                                            break;
                                    }
                                    zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
@@ -523,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();
@@ -576,7 +719,7 @@
                                    {
                                        throw new Exception("保存数据库出错!");
                                    }
                                    _ccontext1.SaveChanges();
                                    _ccontext.SaveChanges();
                                }
@@ -781,6 +924,10 @@
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                        default:
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                    }
                                    zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                    zhengfuProject.Title = sichuanjieshoudtl.title;
@@ -803,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();
@@ -1062,6 +1209,10 @@
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                        default:
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                    }
                                    zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                    zhengfuProject.Title = sichuanjieshoudtl.title;
@@ -1084,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();
@@ -1342,6 +1493,10 @@
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                        default:
                                            zhengfuProject.Cgfs = "10";
                                            cgfsName = "其他";
                                            break;
                                    }
                                    zhengfuProject.OpenTenderCode = sichuanjieshoudtl.openTenderCode;
                                    zhengfuProject.Title = sichuanjieshoudtl.title;
@@ -1364,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();