鍍金池/ 問(wèn)答/Python  HTML/ casperjs + selenium 怎么定位iframe元素?

casperjs + selenium 怎么定位iframe元素?

casperjs + selenium 怎么定位iframe元素?
casper.then(function SetHaulier(){

    test.comment("Set Haulier");
    driver = webdriver.PhantomJS();
    driver.switch_to.frame(0);
    content = driver.page_source.encode('utf-8');
    //driver.switch_to.frame(0);
    //require('utils').dump(this.getElementBounds('//html/body/form/div[1]/div[2]/iframe'));
    this.click(xPath("http://tr/td[7]/a/span"));
    casper.wait(5000,function Sleep(){
        casper.capture(config.captureDir+"/WMC Dashboard (Ligentia)/DCBook/09-ClickDCBookLink.png");
    });
});

頁(yè)面Html

clipboard.png

回答
編輯回答
尐懶貓

from selenium import webdriver
driver = webdriver.Firefox()
driver.switch_to.frame(driver.find_element_by_tag_name("iframe"))

2018年3月11日 15:26
編輯回答
萌二代

正確的定位方式為:
casper.then(function(){

    this.click('a#main-a'); 
    this.click('a#main-b'); 
    this.page.switchToChildFrame(0); 
    this.click('a#iframe-c'); 
    this.page.switchToParentFrame();

});
2017年1月12日 21:27