当尝试登录instagram时,带有Selenium的Phantomjs不处理iframe Java脚本

Phantomjs with Selenium not processing iframe javascripts when try login to instagram

本文关键字:Phantomjs 处理 iframe 脚本 Java Selenium 带有 登录 instagram      更新时间:2024-02-08

我使用的是带有Selenium和PhantomJs的python所以我尝试登录instagram,但phantomjs并没有处理iframes-javascript,当我尝试用firefox做同样的事情时,一切都可以

my_iframe = self.driver.find_element_by_css_selector("iframe.hiFrame")
self.driver.switch_to.frame(my_iframe)
email = WebDriverWait(self.driver, 50).until(
EC.visibility_of_element_located((By.CSS_SELECTOR,"input[name='username']")))

它给出timeout exception。我做错了什么吗?也许硒中还有其他无头浏览器可以使用?

也许您必须使用来自selenium驱动程序的隐式或显式等待。例如:

WebElement container = (new WebDriverWait(driver, maxTimeout))
            .until(ExpectedConditions.elementToBeClickable(By.id("id")));

等待期望元素存在,然后获取元素。Iframe在Phantomjs 2.0 上运行良好

对不起我的英语