Exemple #1
0
        /// <summary>
        /// 根据url获取html
        /// 使用代理之前必须执行GetProxyIps()
        /// </summary>
        /// <param name="url">url</param>
        /// <param name="cookie">cookie</param>
        /// <param name="encoding">编码</param>
        /// <param name="useProxy">是否用代理</param>
        /// <returns></returns>
        public static string GetHtmlByUrl(string url, string cookie, Encoding encoding, bool useProxy)
        {
            string html = "";

            try
            {
                using (var http = new HttpHelper(url, "Get", encoding, cookie, "", ""))
                {
                    //若已没有代理,则不使用代理
                    if (useProxy)
                    {
                        var proxy = GetProxy();
                        if (proxy != null)
                            http.SetWebProxy(_proxyIp.Ip, _proxyIp.Port);
                    }
                    html = http.GetHtml();
                    if (string.IsNullOrEmpty(html))
                        CheckProxyIpErr();
                    Thread.Sleep(300);
                }
            }
            catch { }
            return html;
        }
Exemple #2
0
        /// <summary>
        /// 根据url地址下载文件(主要是图片文件)
        /// </summary>
        /// <param name="url">文件地址</param>
        /// <param name="filename">保存的文件名(含路径)</param>
        /// <param name="useProxy">是否用代理</param>
        /// <returns></returns>
        public static bool UrlDownLoadToFile(string url, string filename,bool useProxy)
        {
            bool result;

            using (var http = new HttpHelper(url))
            {
                //若已没有代理,则不使用代理
                if (useProxy && _ipList.Count() > 0)
                {
                    var proxy = GetProxy();
                    if (proxy != null)
                        http.SetWebProxy(_proxyIp.Ip, _proxyIp.Port);
                }
                result = http.SaveFile(filename);
                Thread.Sleep(100);
            }
            return result;
        }