2015-06-19 3 views
2

Я пытаюсь получить доступ к веб-сайту, чтобы запустить скрипты Selenium. Однако, как только я помещаю ссылку на сайт, появляется всплывающее окно с запросом имени пользователя и пароля.Вход popup и Selenium

Я не могу ничего сделать с Селеном. Посмотрите, что я пробовал в коде, и это явно не сработало.

Любые идеи?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using OpenQA.Selenium; 
using OpenQA.Selenium.Firefox; 
using OpenQA.Selenium.Support.UI; 
using System.Collections.ObjectModel; 
using System.Threading; 
using System.IO; 
using OpenQA.Selenium.Interactions; 

namespace CRMTest1WithSelenium 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      IWebDriver driver = null; 
      driver = new FirefoxDriver(); 
      string credentials = Convert.ToBase64String(Encoding.ASCII.GetBytes("USERNAME" + ":" + "Password")); 

      String URL = "http://" + credentials+ "@" + "bfaz-testcrm.cloudapp.net/BathfitterCRMTest"; 

      driver.Navigate().GoToUrl(URL); 
      driver.Manage().Window.Maximize(); 


     } 
    } 
} 
+0

Вы видите всплывающее предупреждение или всплывающее окно? – Manu

ответ

0

Вы можете использовать библиотеку selenium.actions ударить этого. Я больше человек python, чем C#, но подробности здесь: https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/interactions/Actions.html

Это позволит вам нажать «диалоговые окна действий», чтобы ввести учетные данные.

К сожалению, большинство браузеров теперь сталкиваются с проблемами. Например, поражающее URL с чем-то безголовым, как питоном-запросы позволят вам обойти его: (К сожалению ответов в питоне, однако я думаю, что посылка является таким же)

r = requests.get('https://username:[email protected]

Где, как это должно быть аналогично с использованием webdrivers для Firefox/Chrome с: a = driver.get('https://username:[email protected]')

Однако, если вы смотрите браузер, он правильно передает URL-адрес, но все же отображает раскрывающийся список, в котором стандарты диктуют его квалификацию.

Action Chains - ваш лучший выбор для решения этой проблемы для проверки подлинности HTTP.

 Смежные вопросы

  • Нет связанных вопросов^_^