2011-09-09 79 views
0

這裏的情況 - 在我測試的網站上,頁面源代碼動態變化,即當我將鼠標移到元素上時,我看到一個彈出框,它有DOM結構和所有。我想捕獲彈出窗口中的DOM元素。如何處理使用Selenium Webdriver + Python的彈出

我使用python的webdriver。當我使用IDLE時,它運行良好,因爲彈出窗口停留在網頁上,我可以捕獲DOM結構。但是,當我嘗試在腳本中執行該操作時,彈出窗口僅閃爍在屏幕上,我無法捕獲DOM結構。

我一直在使用WebDriverWait,操作API等嘗試,但沒有什麼工作。任何指針將不勝感激。謝謝。

回答

0

使用操作將鼠標懸停在元素上方。直進的做法是這樣的(不好意思的代碼是在C#):

IWebElement element = driver.FindElement(By.Id("something")); 
Actions action = new Actions(driver); 
actions.MoveToElement(element); 
actions.Perform(); 

//get the DOM structure 

重要的是不要忘記Perform()電話。如果這不起作用(有時它不是),ClickAndHold替換MoveToElement。通常這會使鼠標懸停彈出窗口無限期地打開。

相關問題