コード例 #1
0
ファイル: DB_connect.cs プロジェクト: nikolayiliaev/First
 public List <Report_data> get_reports(string query)
 {
     try
     {
         List <Report_data> all_reports = new List <Report_data>();
         this.open_connection();
         NpgsqlCommand    cmd        = new NpgsqlCommand(query, get_connection());
         NpgsqlDataReader dataReader = cmd.ExecuteReader();
         while (dataReader.Read())
         {
             Report_data report = new Report_data();
             report.login_pass = dataReader["login_pass"].ToString();
             report.login_user = dataReader["login_user"].ToString();
             all_reports.Add(report);
         }
         if (this.connection.State == ConnectionState.Open)
         {
             this.close_connection();
         }
         return(all_reports);
     }
     catch (Exception e)
     {
         if (this.connection.State == ConnectionState.Open)
         {
             this.close_connection();
         }
         return(null);
     }
 }
コード例 #2
0
        public void Get_reports_screen_shots(IWebDriver driver, Report_data report, string from, string to)
        {
            if (!File.Exists(folder_path + "\\" + report.campaign_name + ".png"))
            {
                Func.check_if_folder_exists(folder_path);
                TextWriter tw = Func.check_if_log_file_exists(file_path);
                try
                {
                    IJavaScriptExecutor js = (IJavaScriptExecutor)driver;
                    var wait_login         = new WebDriverWait(driver, TimeSpan.FromSeconds(20));
                    driver.Navigate().GoToUrl(login_url);
                    js.ExecuteScript("document.querySelector(\"input[type='text']\").value=\"" + report.login_user + "\"");
                    js.ExecuteScript("document.querySelector(\"input[type='password']\").value=\"" + report.login_pass + "\"");
                    js.ExecuteScript("document.querySelector(\"input[type='submit']\").click()");
                    Thread.Sleep(5000);
                    driver.Navigate().GoToUrl("http://publishers.adsterra.com/stats/");

                    string from_slash = from.Replace(@"-", "/");
                    string to_slash   = to.Replace(@"-", "/");

                    IWebElement start = driver.FindElement(By.CssSelector("body > div:nth-child(1) > div.page.statistics > form > span:nth-child(6) > span > input[type='text']"));
                    js.ExecuteScript("$(arguments[0]).prop('readonly',false)", start);
                    js.ExecuteScript("arguments[0].value = arguments[1];", start, from_slash);
                    IWebElement finish = driver.FindElement(By.CssSelector("body > div:nth-child(1) > div.page.statistics > form > span:nth-child(7) > span > input[type='text']"));
                    js.ExecuteScript("$(arguments[0]).prop('readonly',false)", finish);
                    js.ExecuteScript("arguments[0].value = arguments[1];", finish, to_slash);
                    Thread.Sleep(3500);

                    driver.FindElement(By.XPath("/html/body/div[1]/div[2]/form/span[6]/span/input[2]")).SendKeys(Keys.ArrowDown + Keys.Enter);
                    driver.FindElement(By.XPath("html/body/div[1]/div[2]/form/span[8]/input")).Click();
                    Thread.Sleep(5000);
                    int document_height       = Convert.ToInt32((string)js.ExecuteScript("return document.body.scrollHeight").ToString());
                    int client_height         = Convert.ToInt32((string)js.ExecuteScript("return document.body.clientHeight").ToString());
                    int number_of_screen_shot = (document_height / client_height) + 1;
                    for (int i = 0; i < number_of_screen_shot; i++)
                    {
                        Func.take_screenshot(report.campaign_name, folder_path, i + 1);
                        js.ExecuteScript("window.scrollTo(0 ," + client_height + ")");
                        Thread.Sleep(2000);
                    }
                    Func.take_screenshot(report.campaign_name, folder_path);
                    Func.clear_local_storage(driver);
                    driver.Navigate().GoToUrl("http://publishers.adsterra.com/");
                    tw.Close();
                }
                catch (Exception e)
                {
                    Func.clear_local_storage(driver);
                    tw.WriteLine(report.campaign_name + " Exception while screen shot try again");
                    tw.Close();
                }
            }
        }
コード例 #3
0
ファイル: Form1.cs プロジェクト: nikolayiliaev/First
        public void generate_screenshot(Report_data report, string path, string folders_name)
        {
            switch (report.advertiser_name)
            {
            case "propellerads":
                Propellerads propellerads = new Propellerads(path + folders_name);
                propellerads.Get_reports_screen_shots(driver, report);
                break;

            case "wigitmedia":
                Wigitmedia wigitmedia = new Wigitmedia(path + folders_name);
                wigitmedia.Get_reports_screen_shots(driver, report);
                break;

            case "AdCash":
                AdCash adcash = new AdCash(path + folders_name);
                if (adcash_users_no_dups.Count() == 0)
                {
                    adcash_users_no_dups[report.login_user] = report;
                    adcash.Get_reports_screen_shots(driver, report);
                    break;
                }
                if (adcash_users_no_dups.ContainsKey(report.login_user))
                {
                    break;
                }
                else
                {
                    adcash_users_no_dups[report.login_user] = report;
                    adcash.Get_reports_screen_shots(driver, report);
                    break;
                }

            case "Revenue_hits":
                Revenue_Hits revenue_hits = new Revenue_Hits(path + folders_name);
                revenue_hits.Get_reports_screen_shots(driver, report);
                break;

            case "Ad6Media":
            {
                Ad6media ad6meida = new Ad6media(path + folders_name);
                ad6meida.Get_reports_screen_shots(driver, report);
                break;
            }

            case "AdsTerra":
            {
                if (adSterraSameUser == 0)
                {
                    AdsTerra adsTerra = new AdsTerra(path + folders_name);
                    adsTerra.Get_reports_screen_shots(driver, report, from, to);
                    adSterraSameUser++;
                }
                break;
            }

            case "Adsupply":
            {
                if (adsupplySameUser == 0)
                {
                    Adsupply adsupply = new Adsupply(path + folders_name);
                    adsupply.Get_reports_screen_shots(driver, report);
                    adsupplySameUser++;
                }
                break;
            }

            case "Pubdirecte":
            {
                if (pubDirecteSameUser == 0)
                {
                    Pubdirecte pubDirecte = new Pubdirecte(path + folders_name);
                    pubDirecte.Get_reports_screen_shots(driver, report, month_formatted[1]);
                    pubDirecteSameUser++;
                }
                break;
            }

            case "Revtop":
            {
                if (revtopSameUser == 0)
                {
                    Revtop revtop = new Revtop(path + folders_name);
                    revtop.Get_reports_screen_shots(driver, report);
                    revtopSameUser++;
                }
                break;
            }

            case "InfinityAds":
            {
                if (infinitySameUser == 0)
                {
                    InfinityAds infinity = new InfinityAds(path + folders_name);
                    infinity.Get_reports_screen_shots(driver, report);
                    infinitySameUser++;
                }
                break;
            }

            case "Exoclick":
            {
                if (exoclickSameUser == 0)
                {
                    Exoclick exoclick = new Exoclick(path + folders_name);
                    exoclick.Get_reports_screen_shots(driver, report, from, to);
                    exoclickSameUser++;
                }
                break;
            }

            case "Popunder":
                if (popunderSameUser == 0)
                {
                    Popunder popunder = new Popunder(path + folders_name);
                    popunder.Get_reports_screen_shots(driver, report, from, to);
                    popunderSameUser++;
                }
                break;

            case "Velis":
                if (report.connection_url.IndexOf("ply2c") > -1)
                {
                    Ply2c velis2C = new Ply2c(path + folders_name, "https://velis.ply2c.com", report.advertiser_name);
                    velis2C.Get_reports_screen_shots(driver, report);
                    break;
                }

                Velis velis = new Velis(path + folders_name);
                velis.Get_reports_screen_shots(driver, report);
                break;

            case "152 Media":
            {
                Ply2c media = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                media.Get_reports_screen_shots(driver, report);
            }
            break;

            case "ad_maven":
            {
                Ply2c admaven = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                admaven.Get_reports_screen_shots(driver, report);
            }
            break;

            case "Adplex":
            {
                Ply2c adplex = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                adplex.Get_reports_screen_shots(driver, report);
            }
            break;

            case "Adstract":
            {
                Ply2c adstract = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                adstract.Get_reports_screen_shots(driver, report);
            }
            break;

            case "Dmg_Dsnr":
            {
                Ply2c dmg = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                dmg.Get_reports_screen_shots(driver, report);
            }
            break;

            case "snw":
            {
                if (report.connection_url.Contains("epom"))
                {
                    SnwEpom epom = new SnwEpom(path + folders_name, "https://n159.epom.com/", report.advertiser_name);
                    epom.Get_reports_screen_shots(driver, report);
                }
                if (report.connection_url.Contains("ply2c"))
                {
                    Ply2c snw = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                    snw.Get_reports_screen_shots(driver, report);
                }
            }
            break;

            case "Matomy":
            {
                Ply2c matomy = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                matomy.Get_reports_screen_shots(driver, report);
            }
            break;

            case "Mango":
            {
                Ply2c mango = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                mango.Get_reports_screen_shots(driver, report);
            }
            break;

            case "HarrenMedia":
            {
                Ply2c harren = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                harren.Get_reports_screen_shots(driver, report);
            }
            break;

            case "BabaNetwork":
            {
                Ply2c baba = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                baba.Get_reports_screen_shots(driver, report);
            }
            break;

            case "mari_media":
            {
                if (report.connection_url.IndexOf("ply2c") > -1)
                {
                    Ply2c ply2c = new Ply2c(path + folders_name, report.connection_url, report.advertiser_name);
                    ply2c.Get_reports_screen_shots(driver, report);
                }
                if (report.connection_url.IndexOf("epom") > -1)
                {
                    MarimediaEpom mari = new MarimediaEpom(path + folders_name, "https://n106.epom.com", report.advertiser_name);
                    mari.Get_reports_screen_shots(driver, report);
                }
            }
            break;

            case "Adland":
            {
                Adland adland = new Adland(path + folders_name, "https://n152.epom.com", report.advertiser_name);
                adland.Get_reports_screen_shots(driver, report);
            }
            break;

            case "Saludo":
            {
                Saludo saludo = new Saludo(path + folders_name, "https://n162.epom.com", report.advertiser_name);
                saludo.Get_reports_screen_shots(driver, report);
            }
            break;

            case "xertive":
            {
                Xertive xertive = new Xertive(path + folders_name, "https://n80.epom.com", report.advertiser_name);
                xertive.Get_reports_screen_shots(driver, report);
            }
            break;
            }
        }