Ejemplo n.º 1
0
        public override async Task RunAsync()
        {
            var conf = DbConfigManager.Default.GetConfig("SqlServerTest", true);

            if (conf == null)
            {
                throw new DbConfigNotFoundException();
            }
            var proxyAgent = ProxyAgent <SqlServerProxyDbContext> .CreateInstance(conf, c => new SqlServerProxyDbContext(c));

            DefaultProxyUriLoader proxyUriLoader = new DefaultProxyUriLoader()
            {
                Days       = 360,
                Condition  = p => p.Id > 0,
                ProxyAgent = proxyAgent
            };
            DefaultWebProxyValidator webProxyValidator = new DefaultWebProxyValidator(CreateWebClient, ValidateWebProxy, new WebProxyValidatorConfig()
            {
                UseThresold         = 1,
                VerifyPauseThresold = 2
            });
            DefaultWebProxySelector proxySelector = new DefaultWebProxySelector(new Uri("http://www.baidu.com"), proxyUriLoader, webProxyValidator);

            proxySelector.Initialize();
            string rspText = await HttpConsole.GetResponseTextByProxyAsync(HomePageUri, proxySelector, GetResponseTextAsync);

            ShowLogInfo(rspText);
        }
Ejemplo n.º 2
0
        private void button2_Click(object sender, EventArgs e)
        {
            ProxyAgent p = new ProxyAgent("嬌嬌");

            p.GiveChocolate();
            p.GiveDolls();
            p.GiveFlowers();
        }
Ejemplo n.º 3
0
        public Uri[] Load(int maxCount)
        {
            var proxyEntities = ProxyAgent.SelectProxyEntities(Condition, Days, maxCount);

            if (proxyEntities.Count < 1)
            {
                return(Array.Empty <Uri>());
            }
            return(proxyEntities.Select(e => e.Value).ToArray());
        }
Ejemplo n.º 4
0
            protected virtual IProxyUriLoader CreateProxyUriLoader()
            {
                var proxyAgent = ProxyAgent <SqlServerProxyDbContext> .CreateInstance("SqlServerTest", true, c => new SqlServerProxyDbContext(c));

                DefaultProxyUriLoader loader = new DefaultProxyUriLoader()
                {
                    Days      = 360,
                    Condition = e => e.Category == 1 && e.AnonymityDegree == 3
                };

                return(loader);
            }
Ejemplo n.º 5
0
        public override async Task RunAsync()
        {
            string caseName = ClassName;
            var    pa       = ProxyAgent <SqlServerProxyDbContext> .CreateInstance("SqlServerTest", true, c => new SqlServerProxyDbContext(c));

            var urls = ApiProvider.GetRequestUrls();

            using (SpiderHttpClient webClient = ApiProvider.CreateWebClient())
            {
                var entities = await GetProxyEntitiesAsync(webClient, HttpMethod.Get, urls, urls.Count * 10);

                if (entities.Count < 1)
                {
                    return;
                }
                entities.ForEach(e => e.Source = caseName);
                ShowLogInfo("CollectCount: " + entities.Count.ToString());
                int insertCount = pa.InsertProxyEntities(entities);
                ShowLogInfo("InsertCount: " + insertCount.ToString());
            }
        }
Ejemplo n.º 6
0
 public void RegisterAgent(ProxyAgent agent)
 {
     this.agents.Add(agent);
 }