예제 #1
0
        public bool CheckProxy()
        {
            try
            {
                int Working = 0;
                string LoggedInIp = string.Empty;

                ChilkatHttpHelpr HttpHelper = new ChilkatHttpHelpr();
                GlobusHttpHelper HttpHelper1 = new GlobusHttpHelper();
                string pageSource = HttpHelper1.getHtmlfromUrlProxyChecker(new Uri("https://twitter.com/"), proxyAddress, int.Parse(proxyPort), proxyUsername, proxyPassword);

                if (string.IsNullOrEmpty(pageSource))//(string.IsNullOrEmpty(pageSource) && string.IsNullOrEmpty(PgSrcHome))
                {
                    Thread.Sleep(500);
                    pageSource = HttpHelper1.getHtmlfromUrlProxyChecker(new Uri("https://twitter.com/"), proxyAddress, int.Parse(proxyPort), proxyUsername, proxyPassword);
                    if (string.IsNullOrEmpty(pageSource))
                    {
                        return false;
                    }
                }
                ///Logic to check...
                if (pageSource.Contains("Sign in") || pageSource.Contains("Sign up") && pageSource.Contains("Twitter"))
                {
                    try
                    {
                        using (SQLiteConnection con = new SQLiteConnection(DataBaseHandler.CONstr))
                        {
                            using (SQLiteDataAdapter ad = new SQLiteDataAdapter())
                            {
                                Working = 1;
                                string query = "Select * from tb_Proxies WHERE ProxyAddress = '" + proxyAddress + "' AND ProxyPort = '" + proxyPort + "' ";
                                System.Data.DataSet ds = DataBaseHandler.SelectQuery(query, "tb_Proxies");
                                if (ds.Tables["tb_Proxies"].Rows.Count > 0)
                                {
                                    //UPDATE tb_Proxies SET Working = 1 WHERE ProxyAddress = '" + proxyAddress + "' , ProxyPort = '" + proxyPort + "' ";
                                    string UpdateQuery = "UPDATE tb_Proxies SET Working = 1 WHERE ProxyAddress = '" + proxyAddress + "' AND ProxyPort = '" + proxyPort + "' ";
                                    DataBaseHandler.UpdateQuery(UpdateQuery, "tb_Proxies");
                                }
                                else
                                {
                                    string UpdateQuery = "INSERT INTO tb_Proxies VALUES ('" + proxyAddress + "', '" + proxyPort + "', '" + "" + "', '" + "" + "' , 1 , 0 , '" + "" + "' ) ";
                                    DataBaseHandler.InsertQuery(UpdateQuery, "tb_Proxies");
                                }

                                Globussoft.GlobusFileHelper.AppendStringToTextfileNewLine(proxyAddress + ":" + proxyPort, Globals.Path_ExsistingProxies);
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> CheckProxy() 1 --> " + ex.Message, Globals.Path_ProxySettingErroLog);
                        GlobusFileHelper.AppendStringToTextfileNewLine("Error --> CheckProxy() 1 --> " + ex.Message, Globals.Path_TwtErrorLogs);
                    }
                    return true;
                }

                return false;
            }
            catch (Exception ex)
            {
                GlobusFileHelper.AppendStringToTextfileNewLine(DateTime.Now + " --> Error --> CheckProxy() 2 --> " + ex.Message, Globals.Path_ProxySettingErroLog);
                GlobusFileHelper.AppendStringToTextfileNewLine("Error --> CheckProxy() 2--> " + ex.Message, Globals.Path_TwtErrorLogs);
                return false;
            }
        }