From 38f88a13e2d7ba9dc80126245339505aab2e9fd5 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期二, 09 七月 2024 16:12:11 +0800
Subject: [PATCH] 提交
---
zhengcaioa/Crawler/sichuan/CcgpSichuanoperation.cs | 185 ++++++++++++++++++++++++++++++++++++++-------
1 files changed, 154 insertions(+), 31 deletions(-)
diff --git a/zhengcaioa/Crawler/sichuan/CcgpSichuanoperation.cs b/zhengcaioa/Crawler/sichuan/CcgpSichuanoperation.cs
index 0dce7a2..7c229e2 100644
--- a/zhengcaioa/Crawler/sichuan/CcgpSichuanoperation.cs
+++ b/zhengcaioa/Crawler/sichuan/CcgpSichuanoperation.cs
@@ -3,7 +3,10 @@
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;
@@ -41,7 +44,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 +54,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 +63,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 +71,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 +79,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 +87,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 +95,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 +103,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 +111,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 +119,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 +127,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 +174,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 +188,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();
+ // 澶勭悊瑙e帇缂╁悗鐨勫搷搴斿唴瀹�
+ }
+ }
+ }
+ }
+ 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");
@@ -289,7 +316,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 +569,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 +583,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();
+ // 澶勭悊瑙e帇缂╁悗鐨勫搷搴斿唴瀹�
+ }
+ }
+ }
+ }
+ else
+ {
+ // 澶勭悊璇锋眰澶辫触鐨勬儏鍐�
+ }
var document = parser.ParseDocument(res);
var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -655,7 +706,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 +908,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 +922,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();
+ // 澶勭悊瑙e帇缂╁悗鐨勫搷搴斿唴瀹�
+ }
+ }
+ }
+ }
+ else
+ {
+ // 澶勭悊璇锋眰澶辫触鐨勬儏鍐�
+ }
var document = parser.ParseDocument(res);
var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -971,7 +1046,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 +1299,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 +1313,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();
+ // 澶勭悊瑙e帇缂╁悗鐨勫搷搴斿唴瀹�
+ }
+ }
+ }
+ }
+ else
+ {
+ // 澶勭悊璇锋眰澶辫触鐨勬儏鍐�
+ }
var document = parser.ParseDocument(res);
var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -1338,7 +1437,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 +1638,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 +1652,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();
+ // 澶勭悊瑙e帇缂╁悗鐨勫搷搴斿唴瀹�
+ }
+ }
+ }
+ }
+ else
+ {
+ // 澶勭悊璇锋眰澶辫触鐨勬儏鍐�
+ }
var document = parser.ParseDocument(res);
var sssdfsdfsd = document.All.Where(m => m.ClassName == "vT-srch-result-list").FirstOrDefault();
var contentList = sssdfsdfsd.QuerySelector("ul");
@@ -1653,7 +1776,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>";
--
Gitblit v1.9.1