static void v5() { WebPageProxyProvider wppp = new WebPageProxyProvider(); wppp.Sources.Add(new WebPageProxySource { URL = "http://proxy.ipcn.org/proxylist.html", Pattern = @"(?<ip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\s*):(?<port>\s*\d{1,5})" }); ProxyValidator pv = new ProxyValidator(); ProxyValidateCondition vc = new ProxyValidateCondition(); vc.Url = "http://www.baidu.com"; vc.Keywords.Add("百度"); vc.Keywords.Add("html"); pv.ValidateConditions.Add(vc); pm = new ProxyManager(); pm.ProxyProviders.Add(wppp); pm.ProxyValidator = pv; pm.ProxyValidator.ValidateConditions.Add(vc); pm.StartDownloadProxies(false); Thread.Sleep(10000); pm.CancelValidation(); }
static void v4() { WebPageProxyProvider wppp = new WebPageProxyProvider(); wppp.Sources.Clear(); wppp.Sources.Add(new WebPageProxySource { URL = "http://proxy.ipcn.org/proxylist.html", Pattern = @"(?<ip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\s*):(?<port>\s*\d{1,5})" }); wppp.ProvideProxy(); }
static void v2() { while (true) { string s = Console.ReadLine(); WebPageProxyProvider wppp = new WebPageProxyProvider(); wppp.Sources.Clear(); wppp.Sources.Add(new WebPageProxySource { URL = s, }); wppp.ProvideProxy(); } }
static void v8() { ManualResetEvent mre = new ManualResetEvent(false); l = new Listener(); SelectiveProxyGuide spg = new SelectiveProxyGuide(); spg.DnsCache = new DNSCache(); spg.PacSetting = new PacSetting(); // spg.PacSetting.AddURLPattern(@"http://.*\.baidu\.com"); pm = new ProxyManager(); WebPageProxyProvider wppp = new WebPageProxyProvider(); wppp.Sources.Add(new WebPageProxySource { URL = "http://proxy.ipcn.org/proxylist.html", Pattern = @"(?<ip>\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\s*):(?<port>\s*\d{1,5})" }); pm.ProxyProviders.Add(wppp); ProxyValidator pv = new ProxyValidator(); ProxyValidateCondition vc = new ProxyValidateCondition(); vc.Url = "http://www.baidu.com"; vc.Keywords.Add("百度"); vc.Keywords.Add("html"); pv.ValidateConditions.Add(vc); pm.ProxyValidator = pv; spg.ProxyManager = pm; l.TargetConnctionGuide = spg; pm.StartDownloadProxies(false); l.StartListener(); mre.WaitOne(); }