【问题标题】:AttributeError: 'WebDriver' object has no attribute 'driver'AttributeError:“WebDriver”对象没有属性“驱动程序”
【发布时间】:2020-08-22 08:45:57
【问题描述】:

切换到 iFrame 时出现错误

AttributeError: 'WebDriver' 对象没有属性 'driver'

这个错误的解决方法是什么?我不知道为什么......

driver = webdriver.Firefox()


url = ''

driver.get(url)
while True:
    iframe = driver.find_element_by_xpath('//iframe[@src="/pages/mediator-search"]')
    driver.driver.switch_to.frame(iframe)

    WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.XPATH, '//a[@class="mediator-name"]')))
    
    response = Selector(text=driver.page_source)
    agents = response.xpath('//a[@class="mediator-name"]')
    for agent in agents:
        outFile =  open("data.csv",'a+',newline="",encoding='utf-8')
        writer = csv.writer(outFile)
        link = agent.xpath('.//@href').get()
        vals = [link]
        writer.writerow(vals)
        outFile.close()
    
    try:
        next_page = driver.find_element_by_xpath('//a[contains(text(), "›")]')
        if next_page:
            next_page.click()
    except:
        break

还需要做以下导入

from selenium import webdriver

from selenium.webdriver.support.ui import WebDriverWait

from selenium.webdriver.common.by import By

from selenium.webdriver.support import expected_conditions as EC

from selenium.common.exceptions import TimeoutException

from selenium.webdriver.support.ui import Select

from selenium.webdriver.common.action_chains import ActionChains

from selenium.webdriver.common.keys import Keys

【问题讨论】:

  • 应该是 driver.switch_to.frame(iframe) 而不是 driver.driver.switch_to.frame(iframe)

标签: python selenium selenium-webdriver iframe


【解决方案1】:

driver.driver.switch_to.frame(iframe) - 在这里更正.. :)。应该是driver.switch_to.frame(iframe)

【讨论】:

  • 我也这样做了..盲目复制粘贴:)
猜你喜欢
  • 2018-11-17
  • 1970-01-01
  • 1970-01-01
  • 2023-01-27
  • 2021-06-23
  • 1970-01-01
  • 2022-06-29
  • 2022-06-25
  • 2022-11-19
相关资源
最近更新 更多