2015-06-19 106 views
2

我想訪問一個網站來啓動我的Selenium腳本。然而,只要我把網站的鏈接,它彈出一個窗口要求用戶名和密碼。登錄彈出窗口和硒

我對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#,但細節在這裏: ​​

這將讓你點擊'行動對話框'輸入憑據。

不幸的是,大多數瀏覽器現在都有這些問題。比如打的東西無頭像蟒蛇,請求將讓網址你繞過它: (不好意思的迴應是蟒蛇,但我覺得前提是相同的)

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

在哪裏,因爲這應該是類似的使用Firefox/Chrome瀏覽器的網頁驅動器: a = driver.get('https://username:[email protected]')

但是,如果您觀看瀏覽器,它將正確傳遞URL,但仍顯示標準規定應該符合條件的下拉列表。

行動鏈是你最好的選擇來處理這個問題的http身份驗證。